Comment faire pour associer une action a l'ouverture de l'index?
merci
Comment faire pour associer une action a l'ouverture de l'index?
merci
comme ceci:
index.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <title>Redirecting</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.action"> </head> <body> </body> </html>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <package name="default" extends="struts-default" namespace="/"> <result-types> <action name="index" class="com.opensymphony.xwork2.ActionSupport"> <result name="success">mapage.jsp</result> </action> </package>
avec struts 1 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> <logic:redirect action="/home.do" />
Ici, la redirection se fait vers une autre page jsp sans devoir créer une action.
Je ne comprend pas bien ce que tu appelles une JSP externe ?
Maintenant rien n'empêche de créer une action et de rediriger vers une page via le "result" du struts.xml (comme un codage traditionnel, sauf que tu auras juste un return SUCCESS; dans la fonction de ton action)
Pour en revenir a mon cas, est ce que l'action est exécutée avant le chargement de ma page ?
Car dans mon action je construit une liste que je veux afficher dans un select sur mon index et je voudrais que cela se fasse a chaque chargement de la page.
merci
Bonjour,
Voici une autre exemple:
Si tu veux initialiser une liste à chaque fois que tu veux rentrer dans une page jsp, tu crées une action avec par exemple une fonction init
struts.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public class MonAction extends ActionSupport public String init() throws Exception { List<Country> countries = ... return "init"; }
index.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <package name="test" extends="struts-default" namespace="/"> <action name="init" method="init" class="MonAction "> <result name="init">maliste.jsp</result> </action>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> <html> <head> <title>Redirecting</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <META HTTP-EQUIV="Refresh" CONTENT="0; URL=init.action"> </head> <body> </body> </html>
Remarque : la page index.jsp sert uniquement à faire une redirection, le code décrit dans le post précédent permet de faire un genre de "forward" en utilisant une action sans devoir devoir créer cet action!
Par contre celui-ci exécute une action "init" avant d'être rediriger vers la page maliste.jsp
Et chaque fois que tu auras besoin de réinitialiser ta liste tu appelles l'action init ...
Partager