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 :

Stuts Validator : probleme


Sujet :

Struts 1 Java

  1. #1
    Membre du Club

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Points : 43
    Points
    43
    Par défaut Stuts Validator : probleme
    Bonjour,

    J'ai mis en place une validation des formulaires via le Struts validation.

    Voici le code
    validation.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
     
    <formset>
    		<form name="ConnexionUtilisateurForm">
    			<field property="nom" depends="required">
    				<arg0 key="erreur.nom" />
    			</field>
    			<field property="motDePasse" depends="required">
    				<arg0 key="erreur.mot.de.passe" />
    			</field>
    			<field property="profil" depends="required">
    				<arg0 key="erreur.profil" />
    			</field>
    		</form>
    	</formset>
    la 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
    <html:javascript formName="ConnexionUtilisateurForm" dynamicJavascript="true"/>
    <html:form action="/connexionUtilisateurOut" onsubmit="return validateConnexionUtilisateurForm(this)">
     
    <table>
    <tr>
    <td><bean:message key="connexion.utilisateur.nom" /></td>
    <td><html:text name="ConnexionUtilisateurForm" property="nom" size="10" maxlength="10"/></td>
    </tr>
    <tr>
    <td><bean:message key="connexion.utilisateur.mot.de.passe" /></td>
    <td><html:text name="ConnexionUtilisateurForm" property="motDePasse" size="10" maxlength="10"/></td>
    </tr>
    <tr>
    <td><bean:message key="connexion.utilisateur.profil" /></td>
    <td><html:text name="ConnexionUtilisateurForm" property="profil" size="8" maxlength="8"/></td>
    </tr>
    </table>
     
     <html:submit value="Valider" onclick="disabled=true;submit()"/>
     
    </html:form>

    l'ActionForm

    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
    public class ConnexionUtilisateurForm extends ValidatorActionForm
    {
        /** variable de classe pour la sérialisation */
        protected static final long serialVersionUID = 1L;
     
        /** variable d'instance pour le nom de l'utilisateur */
        private String nom;
     
        /** variable d'instance pour le mot de passe de l'utilisateur */
        private String motDePasse;
     
        /** variable d'instance pour le profil de l'utilisateur */
        private String profil;
     
        /** Constructeur par défaut */
        public ConnexionUtilisateurForm()
        {
            super();
        }
    ......
    // les getters/setters
    }

    Lorsque je valide mon formulaire dans la page affichée, si je ne saisie pas les champs recquis, j'ai bien une alerte (popup javascript) mais elle n'est pas bloquante; le formulaire est quand même submité.
    Ai-je oublié quelque chose pour empecher le submit en cas d'alerte ?

    Merci d'avance

    Did

  2. #2
    Membre régulier Avatar de et.rond.et.rond
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 110
    Points : 119
    Points
    119
    Par défaut
    déjà je viens de voir qu'il y un point qui a l'ai d'être en trop au début de ".erreur.nom"

    regarde le code source de la fonction validateConnexionUtilisateurForm il y a peut être un test qui manque

    et n'oublie pas de faire aussi la vérification dans la cas où le javascript est désactivé
    ... petit patapon

  3. #3
    Membre du Club

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par et.rond.et.rond
    déjà je viens de voir qu'il y un point qui a l'ai d'être en trop au début de ".erreur.nom"

    regarde le code source de la fonction validateConnexionUtilisateurForm il y a peut être un test qui manque

    et n'oublie pas de faire aussi la vérification dans la cas où le javascript est désactivé
    Ok merci; mais ce point est une erreur de recopie. Mes messages sont longs, donc je n'ai pas tout mis xxx.xxxx.xxxxx.xxxxx.erreur.nom -> erreur.nom .

  4. #4
    Membre expérimenté
    Avatar de zekey
    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 036
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 036
    Points : 1 403
    Points
    1 403
    Par défaut
    Le problème viens du fait que tu utilise un bouton de type submit et que dans le même temps tu utilise onclick(). Donc le browser va démmarrer onclick() puis faire le submit. Donc soit tu dégage le submit dans onclick soit tu utilise un <input type="button" ></input> ou l'equivalent struts
    Steve Hostettler
    est ton ami(e) et le tag aussi.

  5. #5
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    pas forcément zekey, on peux tres bien faire une vérification potentiellement bloquante sur un formulaire avec un bouton submit
    il faut pour cela lier le formulaire à une fonction javascript de la façon suivante :
    <form name="machin" method="truc" onSubmit="return maFonctionJs();">
    (le 'return' est capital)
    maFonctionJs() doit retourner un booleen qui correspond à la validité ou non du formulaire. Si maFonctionJs() retourne false, le forumlaire ne sera pas soumis

  6. #6
    Membre du Club

    Profil pro
    Inscrit en
    Mars 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 13
    Points : 43
    Points
    43
    Par défaut
    Citation Envoyé par zekey
    Le problème viens du fait que tu utilise un bouton de type submit et que dans le même temps tu utilise onclick(). Donc le browser va démmarrer onclick() puis faire le submit. Donc soit tu dégage le submit dans onclick soit tu utilise un <input type="button" ></input> ou l'equivalent struts
    Yes Sir !
    J'avais pas vu tellement je suis dans le struts-validator.
    D'ailleurs, je cherche de la doc pour des formulaires complexes.

    Ex:
    libellé
    [field_1] [field_2] [field_3]
    libellé
    [field_4][field_5]
    libellé
    [field_6] [field_7]

    Faut que je trouve comment faire pour mettre une validation du genre:
    lorsque [field_1], [field_2] [field_3] sont saisis, [field_4] et [field_5] doivent être vides.
    il faut saisir soit [field_6] soit [field_7] mais pas les deux ..
    etc..etc...

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

Discussions similaires

  1. [Validator] problème struts validator
    Par ge-lt dans le forum Struts 1
    Réponses: 2
    Dernier message: 05/07/2006, 15h55
  2. Réponses: 2
    Dernier message: 27/06/2006, 14h34
  3. [ Struts ][ Validator ]problème d'affichage
    Par sebus dans le forum Struts 1
    Réponses: 13
    Dernier message: 17/05/2006, 16h32
  4. [Struts Validator] probleme affichage des erreurs
    Par Morpheus2144 dans le forum Struts 1
    Réponses: 7
    Dernier message: 24/01/2006, 15h25
  5. [Struts-validator] Probleme de 0
    Par sylvain_neus dans le forum Struts 1
    Réponses: 5
    Dernier message: 14/10/2004, 12h37

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