bonjour,
je suis newbis en JSF et j'aurais besoins de vos lumières pour m'aider
je souhaiterais utiliser plusieurs selectManyListbox que je met en cascade dans le cadre d'un trie amélioré.
Par exemple lorsque je clique sur un ou plusieurs élements de ma 1ère selectManyListbox, la 2ème Listbox m'affiche
les résultats correspondants à mes sélections dans ma 1ère selectManyListbox, et ainsi de suite jusqu'à la dernière listbox.
Bon je ne suis pas encore arrivé à ce niveau que j'ai déjà des erreurs au niveau de la 1ère selectManyListBox.
J'arrive à l'alimenter et cliquer dessus mais il ne me récupére pas les bons élements que j'ai sélectionnés. Il y a
comme un décalage; il me donne le ou les élements sur lequels j'ai cliqués précédemment. Je cherche mais je ne comprend cette erreur.
j'utilise JSF standard + rich faces
Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <h:selectManyListbox id="fList" style="height: 140px; width: 159px;" styleClass="inputForm" value="#{cptPreequipBackBean.fournisseurSelected}"> <a4j:support event="onclick" action="#{cptPreequipBackBean.refreshListeFournisseur}" ajaxSingle="true" limitToList="true"/> <f:selectItems value="#{cptPreequipBackBean.fournisseurItems}"/> </h:selectManyListbox>
La classe Java du Bean cptPreequipBackBean:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 private List<SelectItem> fournisseurItems; private List<String> fournisseurSelected; this.fournisseurItems = this.preequiServices.queryFournisseurs();
La méthode queryFournisseurs
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 public List<SelectItem> queryFournisseurs(){ List<SelectItem> fournisseurList = new ArrayList<SelectItem>(); Debug.printDebug("Début de la requête pour récupérer les fournisseurs"); fournisseurList.add(new SelectItem("Fournisseur 1")); fournisseurList.add(new SelectItem("Fournisseur 2")); fournisseurList.add(new SelectItem("Fournisseur 3")); fournisseurList.add(new SelectItem("Fournisseur 4")); fournisseurList.add(new SelectItem("Fournisseur 5")); Debug.printDebug("Fin de la requête pour récupérer les fournisseurs"); return fournisseurList; }
J'espère être assez clair, n'hésiter pas à me poser des question si ce n'est pas clair
Merci de votre aide
Partager