Bonjour,
Dans le cadre d'un projet j'ai un ersatz de réseau social qui permet de rechercher des personne et de les ajouter en ami.
Lorsque j'effectue la recherche j'ai un tableau avec la liste des personnes fournies en résultat, avec en face de chaque personne un bouton "Ajouter aux amis".
On voit donc qu'on cherche à appeler la méthode du JSFBean que voici :
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 <c:forEach var="personne" items="#{utilisateurJSFBean.resultRecherche}" > <tr> <td>${personne.nom}</td> <td>${personne.prenom}</td> <td>${personne.login}</td>> <td>${personne.dateDeNaissance}</td> <td>photo !</td> <td> <h:commandButton value="Ajouter aux amis" action="#{utilisateurJSFBean.addFriend(u)}"> <f:attribute name="u" value="${personne.login}"/> </h:commandButton> </td> </tr> </c:forEach>
Voici également la règle de navigation qui va avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public String addFriend(String u) { System.out.println("AAAAAAAAAA"+u); utilisateurEJB.addEnvoiDemande(utilisateurEJB.findByLogin(login), utilisateurEJB.findByLogin(u)); return "success"; }
Le problème est que la chaîne reste toujours vide. Comment faire en sorte de passer la chaîne désirée (je suis aussi curieux de savoir comment on passe tout un objet, c'est peut être pareil).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <navigation-rule> <from-view-id>/recherche.xhtml</from-view-id> <navigation-case> <from-action>#{utilisateurJSFBean.addFriend(u)}</from-action> <from-outcome>success</from-outcome> <to-view-id>/index.xhtml</to-view-id> </navigation-case> </navigation-rule>
Partager