Bonjour,
Je me demandais si quelqu'un avait une explication a me fournir quant aux forwards en utilisant les tiles.
Je m'explique.
Quand on veux utiliser un global-forward pour faire un lien vers une autre page on peut proceder de la sorte :
Dans la page jsp :
Dans le fichier struts-config.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part <html:link forward="show_page1">aller a la page 1</html:link>
Avec une definition dans le tiles-defs.xml qui s'appellerait donc "page.one".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <global-forwards> <forward name="show_page1" path="/show_page1.do"/> </global-forwards> <action-mappings> <action path="/show_page1" forward="page.one"/> </action-mappings>
Ca OK, ca fonctionne. De meme qu'on pourrait appeler directement l'action sans passer par le forward en remplacant le forward="show_page1" dans la jsp par un action="show_page1.do".
Ce que je chercherais a faire serait de faire abstraction de l'action, pour n'utiliser que le forward et ainsi dans le struts-config.xml n'avoir plus que
Le probleme, c est que ca ne marche pas! (avec struts 1.2.9)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <global-forwards> <forward name="show_page1" path="page.one"/> </global-forwards> <!-- Sans l'action mapping donc -->
J'ai cherché sur le net avant de poster et le pire c est que je trouve des resultats contradictoires. Sur certains site & mailing-lists il est ecrit qu'on peut proceder de la sorte alors que dans d'autres il est tout simplement ecrit "c est pas possible".
Lorsque j'essaie ma methode (equivalente a celle decrite sur les site qui affirment qu'on peut proceder ainsi) je me retrouve a un lien generé dans la jsp qui n'est autre que "page.one". En clair, struts genere le lien sans prendre en compte les definitions de tiles et me propose un lien vers une hypothetique page "page.one"...
Si quelqu'un avait une solution / explication à proposer...
Partager