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 :

Migration Struts 1.0.2 vers Struts 1.1


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Par défaut Migration Struts 1.0.2 vers Struts 1.1
    Bonjour,
    Dans struts 1.1, on peut appeler la méthode mapping.setInput() ?

    Mon application déclenche une exception java.lang.IllegalStateException:
    Configuration is frozen
    ,quand j'appelle mapping.setInput("/page.jsp") à la fin de ma méthode validate dans l'ActionForm
    Pourtant le code fonctionne pour la version Struts 1.0.2

    Merci

  2. #2
    Membre confirmé
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Par défaut form.validate() dans l'action
    La seule solution que je trouve sur le NET :
    1. Mettre validate="false" pour l'action.
    2. Configurer un forward pour chaque page d'erreur
    3. Explicitement appeler form.validate() dans l'action
    4. Appeler la méthode saveErrors() Si la validation échoue
    5. Redirection vers le bon forward

    Vous pensez que c'est la bonne solution ?

  3. #3
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Il suffit d'ajouter l'attribut input="/page.jsp" dans le mapping de l'Action.
    Ainsi, tu seras redirigé automatiquement vers cette page en cas d'erreur de validation.

  4. #4
    Membre confirmé
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Par défaut j'ai bien cette valeur input !
    Merci
    Mais j'ai bien cette valeur input !
    <action name="MonForm" type="MonAction"
    input="autrePageErreur.jsp" scope="session" path="/monAction">
    <forward name="erreurA.jsp" path="/ErreurA.jsp" />
    <forward name="erreurB.jsp" path="/ErreurB.jsp" />
    <forward name="succes" path="/succes.jsp" />
    </action>


    je veux changer cette valeur dynamiquement dans l'actionform (comme avec Struts 1.0.2) de cette manière :

    public ActionErrors validate(ActionMapping mapping,
    HttpServletRequest request) {

    if (MaDispatchAction_Methode="A"))) {

    mapping.setInput("/ErreurA.jsp");

    }

    if (MaDispatchAction_Methode="B"))) {

    mapping.setInput("/ErreurB.jsp");
    }

    return errors;
    }



    ?

  5. #5
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    Je ne savais pas qu'on pouvait modifier cette valeur dynamiquement en Struts 1.0 mais je sais qu'on ne peut plus le faire en 1.2 et apparemment non plus en 1.1.

    Vu que tu as défini les pages d'erreurs dans les forward, tu peux les accèder via :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mapping.findForward("erreurA.jsp");

  6. #6
    Membre confirmé
    Homme Profil pro
    Consultant E-Business
    Inscrit en
    Janvier 2009
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Consultant E-Business

    Informations forums :
    Inscription : Janvier 2009
    Messages : 56
    Par défaut
    Mais la méthode mapping.findForward("erreurA.jsp") doit être utiliser dans une Action !

    Alors que ma méthode validate() sera appeler dans une ActionForm (avant de passer à l'Action )


    public class actionForm extends ActionForm {
    //...
    public ActionErrors validate(ActionMapping mapping,
    HttpServletRequest request) {

    if (MaDispatchAction_Methode="A"))) {
    mapping.findForward("erreurA.jsp"); ???

    }
    if (MaDispatchAction_Methode="B"))) {
    mapping.findForward("erreurA.jsp"); ???
    }
    return errors;
    }

    }


    !

  7. #7
    Expert confirmé

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Par défaut
    En fait, si tu utilises une DispatchAction, ceci est la bonne solution :

    Citation Envoyé par VIP001 Voir le message
    La seule solution que je trouve sur le NET :
    1. Mettre validate="false" pour l'action.
    2. Configurer un forward pour chaque page d'erreur
    3. Explicitement appeler form.validate() dans l'action
    4. Appeler la méthode saveErrors() Si la validation échoue
    5. Redirection vers le bon forward

    Vous pensez que c'est la bonne solution ?

Discussions similaires

  1. migration struts 1.1 vers struts 1.2
    Par jayjaypg22 dans le forum Struts 1
    Réponses: 0
    Dernier message: 24/02/2010, 12h21
  2. migration d'actionMapping de Struts vers Struts 2
    Par pcouas dans le forum Struts 2
    Réponses: 4
    Dernier message: 27/05/2009, 12h08
  3. Migration de struts 1.1 vers struts 1.2.9
    Par VIP001 dans le forum Struts 1
    Réponses: 4
    Dernier message: 27/02/2009, 12h32
  4. Migration de struts 1.0 vers struts 1.3
    Par ElOmbre495 dans le forum Struts 1
    Réponses: 1
    Dernier message: 14/03/2008, 14h54
  5. Migration Struts 1.2.9 vers Struts 1.3.8
    Par mmschnef dans le forum Struts 1
    Réponses: 5
    Dernier message: 03/04/2007, 14h33

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