Bonjour,
J'ai un petit problème concernant un selectOneMenu de ma page jsf.
Dans la page, je créé un formulaire dans le lequel j'enregistre une personne avec comme attributs (login, password, nom, prenom, droit et services).
J'ai une liste déroulante pour sélectionner le service.
voici le code de ma jsp:
Avec ce code, j'arrive à avoir ma liste de services, mais je n'arrive pas à enregistrer la personne car tous les champs se mettent à null...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65 <body> <f:view> <div id="bandeau"> <h:outputText value="Bienvenue sur la page d'inscription"/> </div> <div id="menu"> <h:form> <h:panelGrid columns="2"> <h:column> <h:outputText value="Login : "/> </h:column> <h:column> <h:inputText value="#{personnelController.login}"/><br> </h:column> <h:column> <h:outputText value="Mot de passe : "/> </h:column> <h:column> <h:inputText value="#{personnelController.password}"/><br> </h:column> <h:column> <h:outputText value="Nom : "/> </h:column> <h:column> <h:inputText value="#{personnelController.nom}"/><br> </h:column> <h:column> <h:outputText value="Prenom : "/> </h:column> <h:column> <h:inputText value="#{personnelController.prenom}"/><br> </h:column> <h:column> <h:outputText value="droit : "/> </h:column> <h:column> <h:inputText value="#{personnelController.droit}"/><br> </h:column> <h:column> <h:outputText value="Service : "/> </h:column> <h:column> <h:selectOneMenu> <f:selectItems value="#{personnelController.services}" var="p" itemLabel="#{p.servCode}"/> </h:selectOneMenu> </h:column> <h:column> <h:commandButton value="Enregistrer" action="#{personnelController.createPersonnel}"/> </h:column> </h:panelGrid> </h:form> </div> <!--<div> <h:form> <h:commandButton value="Enregistrer" action="#{personnelController.createPersonnel}"/> </h:form> </div>--> </f:view> </body>
voici le code de ma methode de mon controller ou j'enregistre en bdd ma personne:
J'ai vu qu'on pouvait aussi utiliser un htmlSelectOneMenu et un binding, mais ça ne marche pas mieux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 public String createPersonnel()throws DataAccessException, SQLException { String create = null; if ((getNom()!=null)&&(getPrenom()!=null)){ if(personnelDao.validatePersonnel(getNom(), getPrenom())!= null){ exist = true; create ="echec"; } else { personnel = new Personnel(); personnel.setNom(getNom()); personnel.setPrenom(getPrenom()); personnel.setLogin(getLogin()); personnel.setPassword(getPassword()); personnel.setdroit(getDroit()); personnel.setService(getService()); personnelDao.addPersonnel(personnel); create = "succes"; } } return create; }
Si quelqu'un a une idée, d'avance merci.
Partager