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 :

[Struts] Cannot retrieve definition for form bean null...


Sujet :

Struts 1 Java

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut [Struts] Cannot retrieve definition for form bean null...
    salut à tous,
    je suis bloqué par cette erreur (Cannot retrieve definition for form bean null on action /visu.do) alors que j'ai fais un formulaire tout simple.
    je pense que c'est un oubli ou une erreur bidon de ma part car j'ai un autre formulaire qui fonctionne sans pb sur la page appelant celle ci....
    voici mon code :

    ------page.jsp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <html:javascript formName="visuForm"/>
    <html:form action="/visu.do" enctype="utf-8" onsubmit="return validateVisuForm(this);">
    ...
    <html:text property="montexte" size="30"/>
    ...
    <html:submit styleClass="smallbutton">Visu</html:submit>
    </html:form>
    ------visuForm.java
    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
    public class visuForm extends Action{
     
            public ActionForward execute ( ActionMapping mapg, ActionForm form, HttpServletRequest rqst, HttpServletResponse resp )
        throws java.lang.Exception
            {
                    HttpSession session= rqst.getSession() ;
                    ServletContext svlctx= session.getServletContext() ;
     
                    if (!(form instanceof DynaValidatorForm)) return mapg.findForward("home") ;
     
                    DynaValidatorForm fcForm= (DynaValidatorForm)form ;
                    String montexte= (String)fcForm.get("montexte") ;
     
                    return mapg.findForward("reponse") ;
            }
    }

    ------struts-config.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     <form-bean name="visuForm" type="org.apache.struts.validator.DynaValidatorForm">
          <form-property name="montexte" type="java.lang.String"/>
        </form-bean>
    ...
     <action path="/visu"
                type="struts.form.visuForm"
                name="visuForm"
                input="/index.jsp"
                scope="session"
                validate="false">
                    <forward name="reponse" path="visu"/>
            </action>
    même si je l'ai désactivé j'ai mis ça dans le validation.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form name="visuForm">
                    <field property="montexte">
                            <arg0 key="visuForm.urn"/>
                    </field>
            </form>
    ainsi que ceci dans mon tiles-defs.xml (vu que j'utilise tiles...) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <definition name="visu" extends="mainLayout">
        <put name="curPage"          value="visu"/>
        <put name="body"             value="/pages/visu.jsp"/>
        <put name="menuContent"      value="admin;home;mdSearch;help"/>
      </definition>
    merci de votre aide.

  2. #2
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    up

  3. #3
    Membre expérimenté
    Avatar de fabszn
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2002
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Mars 2002
    Messages : 974
    Points : 1 638
    Points
    1 638
    Par défaut
    Hello,

    Pourrais tu mettre la trace de ton erreur?
    @+

    Fabszn
    Twitter : @fsznajderman

    N'oubliez pas le bouton
    Comment bien poser ses questions sur le forum


  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    31
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 31
    Points : 17
    Points
    17
    Par défaut
    j'ai fini par trouver le pourquoi du comment dans l'action-mapping du struts-config.xml
    voilà le code qui convient (que je n'avais d'ailleurs pas préciser dans mon post au dessus ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        <action      path="/visu"
                     type="org.apache.struts.actions.ForwardAction"
                parameter="/pages/visu.jsp"
                name="visuForm">
        </action>
    je n'avais pas mis l'attribut name dans celui-ci...
    ce qui est d'ailleurs bizarre car j'ai un autre formulaire qui fonctionne sans cet attribut...

    menfin ça marche, merci à vous.
    ++

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 68
    Points : 40
    Points
    40
    Par défaut le name dans la balise <html:form>
    Dans le cas d'une telle erreur regarder également si vous avez bien mis l'attribut name dans la balise <html:form> de votre jsp.

    la balise doit avoir la forme suivante :

    <html:form method="post" action="/monAction.do" name="monForm" type="classeDeMonForm ( chemin complet">

    sans oublier de mentionner name et la classe dans struts-config.xml

  6. #6
    Membre actif
    Profil pro
    Developpeur
    Inscrit en
    Avril 2004
    Messages
    160
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Developpeur

    Informations forums :
    Inscription : Avril 2004
    Messages : 160
    Points : 212
    Points
    212
    Par défaut
    Citation Envoyé par rherrad
    Dans le cas d'une telle erreur regarder également si vous avez bien mis l'attribut name dans la balise <html:form> de votre jsp.

    la balise doit avoir la forme suivante :

    <html:form method="post" action="/monAction.do" name="monForm" type="classeDeMonForm ( chemin complet">

    sans oublier de mentionner name et la classe dans struts-config.xml

    Pas oubligé de mettre name="monForm" type="classeDeMonForm ( chemin complet)"> si tu utilise <html:form> au lieu de <form>

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

Discussions similaires

  1. [Struts] Cannot retrieve definition for form bean
    Par Diablo_22 dans le forum Struts 1
    Réponses: 2
    Dernier message: 10/09/2009, 12h24
  2. Cannot retrieve mapping for action
    Par jlon25 dans le forum Struts 1
    Réponses: 16
    Dernier message: 17/07/2007, 11h37
  3. Cannot retrieve mapping for action /dologin
    Par gentil dans le forum Struts 1
    Réponses: 9
    Dernier message: 29/03/2007, 14h41
  4. Cannot retrieve definition for form bean:
    Par Baptiste Wicht dans le forum Struts 1
    Réponses: 11
    Dernier message: 10/10/2006, 19h27
  5. [struts]Cannot create iterator for this collection
    Par jamal_b dans le forum Struts 1
    Réponses: 3
    Dernier message: 13/04/2006, 17h00

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