Bonjour,
J'ai deux liste selectonemenu et je veux que l'une s'affiche selon la première par exemple la 1er liste celle des payers et la deuxièmes celle des villes.
Voila mon code mais la 2ème liste n'affiche rien !!!
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 <h:outputLabel value="Bureau: " /> <p:selectOneMenu id="bureau" value="#{dataBean.selectedBureau}"> <f:selectItem itemLabel="Choisir un bureau"/> <f:selectItems value="#{dataBean.listBureau}" var="curBur" itemLabel="#{curBur.refBureauDouane}" itemValue="#{curBur}"/> <f:ajax event="change" listener="#{dataBean.genSpecializations()}" execute="bureau" render="ordonn" /> </p:selectOneMenu> <h:outputLabel value="Ordonnancement: " /> <p:selectOneMenu id="ordonn" value="#{dataBean.selectedOrdonn}"> <f:selectItem itemLabel="Choisir un ordonancement"/> <f:selectItems value="#{dataBean.listOrdonn}" var="curSpec" itemLabel="#{curSpec.libelleposte}" itemValue="#{curSpec}"/> </p:selectOneMenu>
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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104 /* * To change this template, choose Tools | Templates * and open the template in the editor. */ package ma.MBeans; import java.io.Serializable; import java.util.List; import javax.annotation.PostConstruct; import javax.ejb.EJB; import javax.enterprise.context.SessionScoped; import javax.faces.event.AjaxBehaviorEvent; import javax.inject.Named; import ma.entities.constatationAffaire.Bureaudouane; import ma.entities.constatationAffaire.Ordonnancement; import ma.session.constatationAffaire.BureaudouaneSessionBean; import ma.session.constatationAffaire.OrdonnancementSessionBean; /** * * @author assma */ @Named(value = "dataBean") @SessionScoped public class dataBean implements Serializable { @EJB private BureaudouaneSessionBean emGeBD; @EJB private OrdonnancementSessionBean emGeO; private Bureaudouane selectedBureau; private List<Bureaudouane> listBureau; private Ordonnancement selectedOrdonn; private List<Ordonnancement> listOrdonn; private boolean showSpecialization = false; public dataBean() { } @PostConstruct public void init() { listBureau = emGeBD.findAll(); if (listBureau != null) { selectedBureau = listBureau.get(0); listOrdonn = emGeO.findByRefBureau(selectedBureau.getRefBureauDouane()); if (listOrdonn != null) { selectedOrdonn = listOrdonn.get(0); } else { } } else { } } public void genSpecializations(AjaxBehaviorEvent event) { if (emGeO.findByRefBureau(selectedBureau.getRefBureauDouane()) != null) { this.showSpecialization = true; } else { } } public List<Bureaudouane> getListBureau() { return listBureau; } public void setListBureau(List<Bureaudouane> listBureau) { this.listBureau = listBureau; } public List<Ordonnancement> getListOrdonn() { return listOrdonn; } public void setListOrdonn(List<Ordonnancement> listOrdonn) { this.listOrdonn = listOrdonn; } public Bureaudouane getSelectedBureau() { return selectedBureau; } public void setSelectedBureau(Bureaudouane selectedBureau) { this.selectedBureau = selectedBureau; } public Ordonnancement getSelectedOrdonn() { return selectedOrdonn; } public void setSelectedOrdonn(Ordonnancement selectedOrdonn) { this.selectedOrdonn = selectedOrdonn; } public boolean isShowSpecialization() { return showSpecialization; } public void setShowSpecialization(boolean showSpecialization) { this.showSpecialization = showSpecialization; } }Si vous pouvez m'aider ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public List<Ordonnancement> findByRefBureau(String ref) { Query query = emO.createQuery("SELECT o " + "FROM Ordonnancement o " + "WHERE o.refBureauDouane.refBureauDouane = :ref "); query.setParameter("ref", ref); return query.getResultList(); }
Merci
Partager