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 :

Redirection vers une Action après envoi d'un formulaire


Sujet :

Struts 2 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Par défaut Redirection vers une Action après envoi d'un formulaire
    Bonjour à tous,

    Je débute avec struts 2 et j'aurais une question.

    Voilà je m'entraine en faisant un formulaire de login. En dessous de ce formulaire, se trouve une liste des login et mots de passe existants.

    J'ai appelé cette action "Home". Donc, à l'appel de http://localhost:8080/Home, je tombe sur mon formulaire et ma liste de logins.

    Bien. Ensuite, l'action de mon formulaire pointe sur une class Login. J'ai donc dans mon fichier struts.xml ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
          <action name="Home" class="carmweb.home.Home">
             <result>/jsp/home.jsp</result>
          </action>
          <action name="Login" class="carmweb.login.action.Login">
             <result>
                /jsp/home.jsp
             </result>
             <result name="error">
                /jsp/home.jsp
             </result>
             <result name="input">            
                /jsp/home.jsp
             </result>
          </action>
    Donc jusque là tout va bien. En cas d'erreur les mesages d'erreur s'affichent etc..

    Mon problème est qu'en faisant une redirection vers
    /jsp/home.jsp
    la liste des logins existants n'apparait plus, celle-ci étant générée par le biais de l'appel à la classe Home ! J'ai essayé de mettre
    <result name="error">
    Home.action
    </result>
    Mais sans succès.. tomcat me dit dans ce cas que la ressource Home n'est pas disponible.

    J'ai également essayé avec un result de type
    <result type="redirectAction">
    <param name="actionName">Home</param>
    </result>
    Et dans ce cas je suis bien redirigé vers Home mais sans que les messages d'erreurs de l'action Login ne soient pris en compte !

    Je ne sais pas si je suis très clair désolé pour cela ! Mais si quelqu'un sait comment faire pour résoudre ce petit problème, c'est à dire afficher à la fois les messages d'erreurs de l'action Login et la liste des logins existant générée par l'action Home, je suis preneur !!!

    Merci d'avance

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 111
    Par défaut
    Slt,

    Je suppose que tu fais appel à un service pour afficher tes logins existant dans "Home.java".
    Pourquoi tu ne ferais pas parreil dans "Login.java"

    Sinon si tu peux nous faire voir ton code (action, jsp, struts.xml) cela vaut toujours mieux qu'un long discours...

    ++

    ---

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Par défaut
    Je te conseillerais d'écrire ton result comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <result type="redirectAction">
          <param name="actionName">Home</param>
          <param name="actionErrors">${actionErrors}</param>
          <param name="fieldErrors">${fieldErrors}</param>
          <param name="actionMessages">${actionMessages}</param>
    </result>
    Si ta classe d'action étend bien ActionSupport, tes messages devraient être transmis à ton action Home.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 19
    Par défaut
    Bonjour,

    Je me permettrais une solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <action name="Home" class="carmweb.home.Home">
      <result>/jsp/home.jsp</result>
    </action>
     
    <action name="Login" class="carmweb.login.action.Login">
      <result name="*" type="chain">Home</result>
    </action>
    Cordialement,

    Stac

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Par défaut
    En effet, cette solution est mieux si on veut reprendre toutes les propriétés de l'action.

    Mais il me semble que dans le cas d'un type chain, l'URL n'est pas modifiée au niveau du navigateur. Il faudrait vérifier, mais je pense que c'est comme ça que ça fonctionne.

    En tout cas, il a les 2 solutions maintenant

Discussions similaires

  1. redirection vers une action en post
    Par lolo le belge dans le forum ASP.NET
    Réponses: 2
    Dernier message: 10/12/2010, 09h26
  2. Redirection vers une action depuis popup en javascript
    Par Rudyyyy dans le forum Struts 1
    Réponses: 2
    Dernier message: 05/06/2009, 12h04
  3. redirection vers une action avec un evt onclick
    Par hypothese dans le forum Struts 1
    Réponses: 1
    Dernier message: 07/05/2009, 18h51
  4. Redirection vers une ancre après un submit?
    Par Maxol dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 22/04/2009, 08h48

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