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 1 Java Discussion :

Action et paramètre


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Février 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 16
    Par défaut Action et paramètre
    Bonjour,

    J'ai une jsp qui affiche une liste de spectacle. Lorsque je choisis un spectacle j'envoie une action avec comme paramètre l'identifiant de mon spectacle. Dans mon action je renvoie le détail du spectacle sélectionné. Ca marche.

    Je modifie un élément de détail du spectacle puis je renvoie à mon objet action ce qu'il doit faire pour mettre à jour ma modif . Ca marche.

    Mais Ensuite j'envoie dans l'objet action "return mapping.findForward("succes");" Mais la jsp qui m'est renvoyé est celle qui affiche la liste des spectacles entiers et non pas filtré avec le spectacle que je viens de sélectionné.

    Question : Ou je dois indiquer et comment pour dire que je veux retourner à ma jsp mais avec les paramètres que je lui ai passée. Et donc dans ce cas avec le spectacle que j'avais mis à jour.

    Merci pour votre aide

  2. #2
    Membre confirmé
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    167
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 167
    Par défaut
    peux tu nous montrer ton struts-config et ton action stp?

  3. #3
    Membre chevronné 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
    Par défaut
    A la fin de ton action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    request.setAttribute("nom du parametre", valeur du parametre);
    Et tu fais pointer ton forward vers ton action qui affiche les spectacle désirés. Vu qu'ils sont passé en paramètres, ton action les récupère et les envoie a la bonne jsp.

  4. #4
    Membre averti
    Inscrit en
    Février 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 16
    Par défaut
    Jolokossovar ça n'a pas fonctionné.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    Struts-config :
    <struts-config>
    
        <!-- Sources de données -->
        <data-sources>
        </data-sources>
    
        <!-- Beans de formulaire -->
        <form-beans>
            <form-bean name="dashBoardTimeKeeperForm"  type="com.ed.timekeeper.client.action.attraction.AttractionForm" />
        </form-beans>
    
        <!-- Exceptions globales -->
        <global-exceptions>
        </global-exceptions>
    
        <!-- Références aval globales -->
        <global-forwards>
        </global-forwards>
    
        <!-- Mappages d'action -->
        <!--forward name="succes" path="/jsp/timekeeper/dashboard/attractionDashBoard.jsp"/-->
        <action-mappings>
        
            <action   name="dashBoardTimeKeeperForm" path="/validerAttraction"  type="com.ed.timekeeper.client.action.attraction.FormAttractionValiderAction" scope="session" validate="false"  >
                <forward name="succes" redirect="true" path="/formTabsDashboard.do"/>            
                <forward name="error" path="/formTimeKeeperHome.do"/>            
            </action>
            
        <action   name="dashBoardTimeKeeperForm" path="/formTabsDashboard" type="com.ed.timekeeper.client.action.attraction.FormAttractionAction"  scope="session" validate="false" >
                <forward name="succes" redirect="true" path="testTabsDashboardTile"/>       
                <forward name="error" path="attractionDashboardTile"/>                       
            </action>        
            
        </action-mappings>
    
    </struts-config>
    A la fin de la méthode execute de mon action "FormAttractionValiderAction" je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    request.setAttribute("action", "spectacleChange");
    request.setAttribute("newSpectacleSelected",  nomDuSpectacle);        
    return mapping.findForward("succes");
    Merci pour votre aide

  5. #5
    Membre chevronné 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
    Par défaut
    Dans ton action formTabsDashboard tu recuperes bien tes deux paramètre via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    param1 = (TypeDuParam)request.getParameter(nomDuParam);
    essaie d'enlever les redirection=true (a quoi servent ils ?)

  6. #6
    Membre averti
    Inscrit en
    Février 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 16
    Par défaut
    Jolokossovar , j'ai enlever les redirection. A la fin de ma méthode execute lorsque je fais request.setAttribute... ceci n'a aucune influence sur le forward. Le forward s'execute après la mise à jour et c'est l'action formTabsDashboard qui se déclenche MAIS les paramètres (que j'essaie de changer dans request.setAttribute) possède les valeurs de l'action "validerAttraction".

    PS : Et à l'affichage de la jsp j'ai l'url suivante , http://localhost:9081/TimeKeeper/val...&newHour=16:55
    hors je devrais avoir l'url http://localhost:9081/TimeKeeper/for...elected=554207 qui est celle pour visualiser le détail d'un spectacle alors que l'autre c'est l'url de la mise à jour.

  7. #7
    Membre confirmé
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    167
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 167
    Par défaut
    Je voudrais bien t'aider mais je ne comprends pas trop ce que tu fais. stp, peux tu nous faire parvenir l'ensemble des actions, forms, jsp... ?

    PS : Attention à la mise en forme stp : le bouton # dans l'éditeur te permet de faire des zones de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <struts-config>
    <!-- Sources de données -->
    <data-sources>
    </data-sources>
     
    <!-- Beans de formulaire -->
    <form-beans>
    <form-bean name="dashBoardTimeKeeperForm" type="com.ed.timekeeper.client.action.attraction.AttractionForm" />
    </form-beans>
     
    <!-- Exceptions globales -->
    <global-exceptions>
    </global-exceptions>
     
    <!-- Références aval globales -->
    <global-forwards>
    </global-forwards>
     
    <!-- Mappages d action -->
    <!--forward name="succes" path="/jsp/timekeeper/dashboard/attractionDashBoard.jsp"/-->
    <action-mappings>
     
    <action name="dashBoardTimeKeeperForm" path="/validerAttraction" type="com.ed.timekeeper.client.action.attraction.FormAttractionValiderAction" scope="session" validate="false" >
    <forward name="succes" redirect="true" path="/formTabsDashboard.do"/> 
    <forward name="error" path="/formTimeKeeperHome.do"/> 
    </action>
     
    <action name="dashBoardTimeKeeperForm" path="/formTabsDashboard" type="com.ed.timekeeper.client.action.attraction.FormAttractionAction" scope="session" validate="false" >
    <forward name="succes" redirect="true" path="testTabsDashboardTile"/> 
    <forward name="error" path="attractionDashboardTile"/> 
    </action> 
     
    </action-mappings>
     
    </struts-config>

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

Discussions similaires

  1. Parallel.For et Action à plusieurs paramètres ?
    Par codnob dans le forum C++/CLI
    Réponses: 0
    Dernier message: 11/01/2012, 16h54
  2. [1.x] recupérer dans l' action un paramètre de l' url
    Par mantex dans le forum Symfony
    Réponses: 12
    Dernier message: 25/11/2010, 18h39
  3. Action et paramêtres en POST
    Par BakaOnigiri dans le forum JSF
    Réponses: 1
    Dernier message: 17/10/2008, 10h11
  4. Réponses: 2
    Dernier message: 17/01/2007, 11h20
  5. Passer des paramètres à l'URL de retour d'une action
    Par et.rond.et.rond dans le forum JSF
    Réponses: 2
    Dernier message: 03/08/2006, 23h03

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