Précédent   Forum des professionnels en informatique > Java > Général Java > Spring
Spring Forum d'entraide pour le framework Spring. Avant de poster -> FAQ Spring
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/01/2012, 17h49   #1
Membre habitué
 
Inscription : novembre 2005
Messages : 226
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 226
Points : 100
Points : 100
Par défaut [Formulaire] Problème pour récupérer valeur autre que texte

Bonjour,

je suis en train de travailler sur une application web faite avec spring 3 mvc
J'ai un formulaire avec des champs divers (champ texte, checkbox, list)
Je n'arrive pas à récupérer les valeurs qui ne sont pas contenu dans des zones de textes (qui sont contenu dans des checkbox ou select etc..).

Voilà ce que donne mon formulaire (extrait pour une checkbox)

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@taglib uri="http://www.springframework.org/tags" prefix="spring"%>
<%@taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%>
 
 
<html>
<head>
</head>
<body>
	<form:form action="valid.do" commandName="myobj">
		<table>
		<tr>
				<td>Type:</td>
				<td>
					<form:input path="type"  />
				</td>
			</tr>
			<tr>
				<td>boolean </td>
				<td>
					<form:checkbox path="b1"  />
				</td>
			</tr>
		</table>
 
	</form:form>
</body>
</html>
Le bean myobj :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
public class MyOBJ {
 
	private String type; 
	private Boolean b1;
 
	public MyOBJ() {
	}
 
	public String getType() {
		return type;
	}
	public void setType(String type) {
		this.type = type;
	}
	public boolean isB1() {
		if(b1 == null) b1 = false;
		return b1;
	}
	public void setB1(Boolean b1) {
		if(convention == null) b1 = false;
		this.b1 = b1;
	}
}
et le controler :

Code :
1
2
3
4
5
6
7
8
9
	@RequestMapping(value="/valid.do",method = RequestMethod.POST)
	public String valid(MyOBJ myobj,BindingResult result,ModelMap model) {
 
		System.out.println("type=" + myobj.getType());
		System.out.println("b1=" + myobj.isB1());
 
 
		return "redirect:/accueil";
	}

Et là le résulatt est que je vois bien la valeur de type mais b1 reste toujours à false.

J'ai oublié de déclarer quelque chose?

merci pour votre aide...
nezdeboeuf62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 10h12   #2
Membre habitué
 
Inscription : novembre 2005
Messages : 226
Détails du profil
Informations forums :
Inscription : novembre 2005
Messages : 226
Points : 100
Points : 100
Bonjour,

j'ai trouvé la solution.

En fait c'est dans mon bean MyOBJ où au lieu d'appeller la propriété 'isB1()' il fallait simplement l'appeller 'getB1()'

Bonne journée,
nezdeboeuf62 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h04.


 
 
 
 
Partenaires

Hébergement Web