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 ][ Validator ]problème d'affichage


Sujet :

Struts 1 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut [ Struts ][ Validator ]problème d'affichage
    bonjour,

    J'ai un pblm avec mon Validator car je n'arrive pas à lui faire afficher les messages voulus. En effet il affiche rien du tout....

    Voici les bouts de codes que j'ai modifiés pour "installer" le validator:

    struts-config:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        <plug-in className="org.apache.struts.tiles.TilesPlugin">
            <set-property property="definitions-config" value="/WEB-INF/gabaritConges-tiles.xml" />
            <set-property property="definitions-debug" value="2" />
            <set-property property="definitions-parser-details" value="2" />
            <set-property property="definitions-parser-validate" value="true" />
        </plug-in>
        <plug-in className="org.apache.struts.validator.ValidatorPlugIn">
            <set-property property="pathnames" value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />
        </plug-in>
    validator-rules.xml :
    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
    <form-validation>
    <global>
     
    <validator name="required"
            classname="org.apache.struts.validator.FieldChecks"
            method="validateRequired"
            methodParams="java.lang.Object,
                     org.apache.commons.validator.ValidatorAction,
                     org.apache.commons.validator.Field,
                     org.apache.struts.action.ActionMessages,
                     javax.servlet.http.HttpServletRequest"
            msg="errors.required"/>
     
    </global>
    </form-validation>
    validation.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <form-validation>
    <formset>   
     
    <form name="loginForm">
          <field property="login" depends="required">
        </field>
    </form>   
     
    </formset>   
    </form-validation>
    login.jsp:
    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
    <html:form action="/login.do?event=traitement"  onsubmit="return validateLoginForm(this);">
    <table width="500"  border="0" cellspacing="0" cellpadding="0" align="center">
      <tr>
        <td width="115">Login:</td>
        <td width="215">
          <html:text property="login" />
        <html:errors property="login"/>
        </td>
      </tr>
      <tr>
        <td>Mot de passe:</td>
        <td>
          <html:password property="password" />
            <html:errors property="password"/>
        </td>
      </tr>
       <tr>
        <td colspan="2" align="center">
        <html:submit property="submit"/>
      </tr>
    </table>
    </html:form>
    entête du formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public class LoginForm extends ValidatorForm {
    méthode faisant le traitement dans l'action:
    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
        public ActionForward traitement(
            ActionMapping mapping,
            ActionForm form,
            HttpServletRequest request,
            HttpServletResponse response)
            throws Exception
        {
            LoginForm loginForm = (LoginForm)form;
     
            ActionErrors erreurs = new ActionErrors();
            BeanLogin retour = new BeanLogin();
            retour.setLogin(loginForm.getLogin());
            retour.setPassword(loginForm.getPassword());
            System.out.println("login: "+loginForm.getLogin());
            System.out.println("Password: "+loginForm.getPassword());
            retour = LoginServices.getInstance().VerifLogin(loginForm.getLogin(),loginForm.getPassword());
     
            if (retour.getNoDossierPers() != null)
            {    
                HttpSession httpSession = request.getSession(true);            
                httpSession.setAttribute("login",retour);
                //ok il existe on charge les données et on les mets en session
                return mapping.findForward("success");
            }
            else{
                /**/
                erreurs.add("password",new ActionMessage("erreur.login.action.login.unknown"));                            
                saveMessages(request,erreurs);
                return mapping.findForward("echec");
            }
        }
    Si quelqu'un voit une erreur (qui doit y etre c sur !!) ou peut faire avancer mon scmilblick merci d'avance

  2. #2
    SrK
    SrK est déconnecté
    Membre confirmé
    Inscrit en
    Avril 2006
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 213
    Par défaut
    as tu mis le <html:javascript formName="loginForm" />
    dans le header de ton jsp ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    non mais normalement il me semble qu'il n'y en a pas besoin....

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    je pense que j'aime un probleme de Cast dans l'action.....

  5. #5
    Membre chevronné


    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    7 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 7 855
    Par défaut
    Citation Envoyé par sebus
    non mais normalement il me semble qu'il n'y en a pas besoin....
    Ca dépend si tu as généré une fois le Javascript et que tu l'inclues ensuite.
    Sinon tu n'auras pas toutes les fonctions JS de vérification proposées par le validator.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    quand je disais que je pensais que j'en avais pas besoin, je voulais dire que pour l'instant je n'utilise pas de fonction écrite en java script dans mon validateur, j'utilise seulement des fonctions deja existantes (ici requiered).
    Mais par contre je garde le conseil sous le coude car je risque de devoir faire du javascript surement un de c'es 4....

    En fait maintenant quand je ne rempli pas mon champ, j'ai rien qui s'affiche sur la jsp (le message d'erreur n'apparait pas), mais par contre quand le champ est rempli, le traitement de la page est lancé mais je suis bloqué par une exception de type ClassCast qui se situe a priori dans l'action (au moment de récupérer le form)

  7. #7
    Futur Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 4
    Par défaut
    As-tu vérifié que ton messageResources.properties était bien dans WEB-INF/src et que la clé "errors.required" est bien présente ?

    Cela pourrait expliquer pourquoi le message ne s'affiche pas.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2005
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 221
    Par défaut
    Ca ......... c'est fait !!!!!!!!!

    Comme je le disais hier en début d'aprem et comme je le craignais (hé oui je suis débutant en struts donc les conneries à 2 balles c'est facile à faire...) mon problème provenait bien d'une connerie grosse comme moi c'est à dire une faute de frappe........

    si on regarde bien dans le struts-config, l'élément attribute de l'action commence par un L alors que l'alias commence par un l........................

    Et comme je ne savais pas à quoi servais justement l'attribut attribute je ne l'avais pas regardé de près...

    Si quelqu'un sais au moins en gros a quoi il sert, pourrait il me le préciser? Merci beaucoup à tous ceux qui m'ont aider et apporter des éléments de recherche

    et surtout pour finir: honte à moi

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

Discussions similaires

  1. [Struts Validator] probleme affichage des erreurs
    Par Morpheus2144 dans le forum Struts 1
    Réponses: 7
    Dernier message: 24/01/2006, 15h25
  2. [struts][validation][Timestamp] comment faire?
    Par anas.rih dans le forum Struts 1
    Réponses: 6
    Dernier message: 16/04/2004, 23h59
  3. [Struts-Validator] Gestion d'erreurs
    Par sylvain_neus dans le forum Struts 1
    Réponses: 14
    Dernier message: 09/04/2004, 15h15
  4. Réponses: 9
    Dernier message: 24/03/2004, 12h15
  5. [Struts]Validation de formulaire
    Par djoukit dans le forum Struts 1
    Réponses: 4
    Dernier message: 12/03/2004, 09h12

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