je suis en train de développer une application de gestion de zone de sécurité pour une plate forme de géolocalisation avec JSF.J'ai un bouton de type <a4j:commandButon> qui met une zone sélectionnée en pause cela se fait par le changement d'attribut etat de zone et l'update de cette zone dans la table Zone. Voila le code de ce bouton.
voila le code de formulaire dans laquelle les attribut de la zone sont affichées
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <a4j:commandButton value="pause" image="icons/pause1.png" action="#{zoneBean.mettreEnPause}" reRender="zone_tab"> </a4j:commandButton>
voila le code de méthode mettreEnPause dans zoneBean:
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 <h:form > <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="100"><b><h:outputText value="Nom de zone:" /></b></td> <td width="100"><h:inputText id="nom_zone" value="#{zoneBean.zone.nomZone}" > </h:inputText></td> <td><b><h:outputLabel value="etat :" /></b></td> <td>< <select name="etat" id="etat" value="#{zoneBean.zone.etat}"> <option value="0">En pause</option> <option value="1">En marche</option> </select></td> </tr> <tr> <td><b><h:outputLabel value="longitude centre :" /></b></td> <td><h:inputText id="long_centre" readonly="true" value="#{zoneBean.zone.longitudeCentre}"> </h:inputText></td> <td><b><h:outputText value="Lattitude centre :" /></b></td> <td><h:inputText id="lattit_centre" readonly="true" value="#{zoneBean.zone.lattitudeCentre}"> </h:inputText></td> </tr> <tr> <td><b><h:outputText value="diametre :" /></b></td> <td><h:inputText id="diametre" value="#{zoneBean.zone.diametre}"> </h:inputText></td> <td><b><h:outputText value="numéro téléphone:" /></b></td> <td><h:inputText id="TE" value="#{zoneBean.zone.numTel}"> </h:inputText></td> </tr> <tr> <td><b><h:outputText value="Adresse mail :" /></b></td> <td><h:inputText readonly="true" id="mail_adresse" value="#{zoneBean.zone.mailAdresse}" /></td> <td><b><h:outputText value="Date de fin:" /></b></td> <td><rich:calendar datePattern="dd/MM/yyyy" popup="true" value="#{zoneBean.zone.date_fin}" /></td> </tr> </table> <hr> <h:inputHidden id="id_soc" value="#{zoneBean.zone.id_soc}"></h:inputHidden> <h:inputHidden id="id_zone" value="#{zoneBean.zone.id_zone}"></h:inputHidden> <h:inputHidden id="date_debut" value="#{zoneBean.zone.date_debut}"></h:inputHidden> </h:form>
le probleme est quand je clique sur ce bouton les valeurs des attributs de Zone deviennent NULL.Le probleme c'est que l'objet zone n'est pas envoyé au zoneBean pour etre sauvegardé. SVP y'a-t-il une méthode pour résoudre ce probleme?? Merci d'avance
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 public String mettreEnPause() { if (this.zone.getEtat() == 1) { this.zone.setEtat(0); return this.modifierZone(); } else return "Enmarche"; } public String modifierZone() { log.debug("#DDD############ modifierZone()"); try { this.zoneService.updateZone(zone); this.zones = zoneService.findZones("id_soc", this.zone.getId_soc() .toString(), ""); return "success"; } catch (Exception e) { e.printStackTrace(); return "failure"; } }
Partager