Ok, on va recommencer depuis le début.
Tout d'abord, sache que la balise <navigation-rule> dans faces-config définie une règle de navigation, autrement dit, elle permet de changer de page. Le changement de page est déclenché grâce au nom défini dans la balise <from-outcome>. <to-view-id> détermine la page à afficher. Les 2 autres balises (<from-view-id> et <from-action>) sont falcultatives, elles ajoutent des restrictions à l'accès de ta page. Donc plus simplement on peut avoir :
1 2 3 4 5 6
| <navigation-rule>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/Page6.jsp</to-view-id>
</navigation-case>
</navigation-rule> |
J'imagine que ton lien 'Détails' ressemble à :
<h:commandLink value="Détails" action"#{nomDeTaPage5.lien1_action}"/>
nomDeTaPage5 étant le nom représentant Page5.java (nom défini dans faces-config).
La méthode lien1_action() lancée à travers l'attribut 'action' de ton composant commandLink doit retourner
"success" si tu veux afficher la Page6 (comme spécifié dans faces-config).
Maintenant que nous avons éclairci comment procéder pour changer de page, voyons pour transmettre les données à ton Page6.java.
Tu arrives à récupérer ton objet dans ta méthode lien1_action(), très bien. Il te suffit donc de rajouter à la fin de ta méthode :
1 2 3 4 5 6 7 8 9 10
| public String lien1_action() throws NamingException, NamingException, NamingException, SQLException, ClassNotFoundException {
.
.
.
.
FacesContext facesContext = FacesContext.getCurrentInstance();
managedBeanDestinataire = (Page6) facesContext.getApplication().getELResolver().getValue(facesContext.getELContext(), null, "nomDeTaPage6");
managedBeanDestinataire.prerender(register);
return "success";
} |
Si tu veux le code exacte, montre moi le contenu de toutes tes balises <managed-bean> de ton faces-config.
Pour finir, dans Page6.java, il te faut redéfinir prerender:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public void prerender(Register register) {
id.setText(register.getId());
firstName.setText(register.getFirstName());
lastName.setText(register.getLastName());
userName.setText(register.getUserName());
password.setText(register.getPassword());
profil.setText(register.getProfil());
email.setText(register.getEmail());
contactNo.setText(register.getContactNo());
address.setText(register.getAddress());
country.setText(register.getCountry());
state.setText(register.getState());
} |
Voilà
Partager