Bonjour,
je débute complètement avec jsf mais je me pose une question très simple : Peut-on accéder à un ManagedBean avant d'exécuter la jsp ?
Je m'explique, j'ai fait une page mapage1.jsp qui contient quelques trucs dont le lien suivant :
Code :
- <h:commandLink action="#{monManagedBean.lien2}">
- <h:outputText value="lien2">
- </h:commandLink>
|
lorsque je click sur ce lien j'arrive dans la méthode lien2() du managedBean monManagedBean.
Code :
- public String lien2()
- {
- //traitement java pour récupérer une liste en BDD et la mettre en request
- return "mapage2";
- }
|
Cette méthode effectue un traitement genre un appel à la BDD pour récupérer une liste et mettre cette liste en request. Puis elle retourne la chaine de caractère "mapage2".
d'après ce qui est indiqué dans mon faces-config, la page mapage2.jsp va être affiché à l'écran :
Code :
- <navigation-rule>
- <from-view-id>/jsp/mapage1.jsp</from-view-id>
- <navigation-case>
- <from-outcome>mapage2</from-outcome>
- <to-view-id>/jsp/mapage2.jsp</to-view-id>
- </navigation-case>
- </navigation-rule>
|
dans mapage2.jsp je vais pouvoir récupérer la liste présente en request et l'afficher.
Voilà quand j'appelle l'url http://localhost:8080/learn/jsp/mapage1.faces je tombe sur ma page avec mon lien et lorsque je click dessus j'arrive bien sur mapage2 avec ma liste récupérée en BDD.
Jusque là ça va. Mon problème est que je voudrais accéder directement à mapage2 (et donc passer par le managedBean qui appel la BDD) sans passer par mapage1. Est-ce possible ? et comment dois-je faire ?
J'espère avoir été clair dans ma demande (je peux préciser si besoin).
Merci à ceux qui voudront bien m'éclairer.
lipao