IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 2 Java Discussion :

Associer une action a l'ouverture de l'index


Sujet :

Struts 2 Java

  1. #1
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    726
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 726
    Points : 266
    Points
    266
    Par défaut Associer une action a l'ouverture de l'index
    Comment faire pour associer une action a l'ouverture de l'index?

    merci

  2. #2
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Points : 114
    Points
    114
    Par défaut
    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>

  3. #3
    Membre du Club
    Profil pro
    lead dev
    Inscrit en
    Février 2008
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : lead dev

    Informations forums :
    Inscription : Février 2008
    Messages : 75
    Points : 65
    Points
    65
    Par défaut
    Et à l'ouverture d'une JSP externe ?

  4. #4
    Membre confirmé Avatar de JoloKossovar
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 532
    Points : 576
    Points
    576
    Par défaut
    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" />

  5. #5
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Points : 114
    Points
    114
    Par défaut
    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)

  6. #6
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    726
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 726
    Points : 266
    Points
    266
    Par défaut
    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

  7. #7
    Membre confirmé Avatar de JoloKossovar
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 532
    Points : 576
    Points
    576
    Par défaut
    Et bien, quand tu rrive sur ta page, cela déclenche l'action, tu construit ta liste dans l'action et tu forward vers la page ou tu veux afficher ta liste. Mais ce ne sera pas l'index, puisque l'index déclenche une action direct, tu ne pourra pas voir ta liste.

  8. #8
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    726
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 726
    Points : 266
    Points
    266
    Par défaut
    ok si je comprends bien je dois laisser le index.jsp conpletement vide. Cette page ne servira qu' a appeler une action qui me dirigera vers une autre page que je pourrai définir comme mon index, c'est cela ?

    merci

  9. #9
    Membre confirmé Avatar de JoloKossovar
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 532
    Points : 576
    Points
    576
    Par défaut
    Oui c'est ca.

  10. #10
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    726
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 726
    Points : 266
    Points
    266
    Par défaut
    Citation Envoyé par dzafer Voir le message
    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>
    J'ai essaye ceci mais je reste sur la page d'index.
    J'ai appellé mon action "Index" et pas "index" cela change t il quelque chose?

    merci

  11. #11
    Membre régulier
    Inscrit en
    Juin 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 94
    Points : 114
    Points
    114
    Par défaut
    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

    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";
    	}
    struts.xml
    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>
    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=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 ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [1.x] Comment associé une action au gabarit principal layout.php
    Par rockybalboa dans le forum Symfony
    Réponses: 3
    Dernier message: 04/07/2008, 16h37
  2. Executer une action après l'ouverture du form
    Par toure32 dans le forum Delphi
    Réponses: 5
    Dernier message: 22/03/2007, 19h55
  3. Réponses: 2
    Dernier message: 04/12/2006, 09h32
  4. associer une action a un jcombobox
    Par jlassiramzy dans le forum AWT/Swing
    Réponses: 14
    Dernier message: 04/08/2006, 10h59
  5. [VB.NET] Associer une action a bcp d'objets ....
    Par Michocs17141 dans le forum Windows Forms
    Réponses: 9
    Dernier message: 06/12/2004, 12h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo