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 :

[Validator] vérification d'un entier invalide


Sujet :

Struts 1 Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Septembre 2006
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 9
    Points : 8
    Points
    8
    Par défaut [Validator] vérification d'un entier invalide
    Bonjour,

    Je manipule depuis très récemment (ce matin) ce petit framework "common validator". Peut-être sauriez vous éclairer ma lanterne car là, je butte... Malgré l'aide trouvée sur le Net.

    J'ai mon fichier struts-config qui définit le form héritant de DynaValidatorForm :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <form-bean name="monForm" dynamic="true" type="org.apache.struts.validator.DynaValidatorForm">
    </form-bean>
    J'ai mon action qui demande la validation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <action path="/action"
    	name="monForm"
    	validate="true"
    	type="action"
    	input="/action.jsp">
    		<forward name="success"	path="/success.jsp" />
    </action>
    J'ai défini dans ma page un champ dont j'aimerais que l'user ne rentre que des chiffres :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <html:form action="/action">
    	<input type="text" size="20" name="cards">
    	<input type="submit" value="valid">
    </html:form>
    J'ai défini mon validation.xml comme voulant que l'user rentre un entier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <form name="monForm">
    	<field property="cards" depends="required,integer">
    	<arg position="0" key="cards" resource="false"/>
    	</field>
    </form>
    Et mes rules sont bien dans le 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
    <validator name="integer"
                classname="org.apache.struts.validator.FieldChecks"
                   method="validateInteger"
             methodParams="java.lang.Object,
                           org.apache.commons.validator.ValidatorAction,
                           org.apache.commons.validator.Field,
                           org.apache.struts.action.ActionMessages,
                           org.apache.commons.validator.Validator,
                           javax.servlet.http.HttpServletRequest"
                  depends=""
                      msg="errors.integer"
           jsFunctionName="IntegerValidations"/>

    Quand j'exécute tout ça :
    - je rentre rien : il me jette à cause du "required"
    - je rentre des lettres : il me jette à cause du "required"
    - je rentre des chiffres : il me jette à cause du "required"

    ...

    C'est là que je ne comprend pas trop

    Merci de vos lumières

  2. #2
    Membre éclairé Avatar de zorm
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Décembre 2004
    Messages : 584
    Points : 672
    Points
    672
    Par défaut
    Il faut que tes champs de ta jsp utilisent les tags de struts donc a la place des input type="text", tu utilises les html:text ...

  3. #3
    Expert éminent

    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
    Points : 7 778
    Points
    7 778
    Par défaut
    Tout d'abord, je te conseille d'utiliser les tag Struts html:text et html:submit au lieu des tags html input.

    Et sinon, la propriété cards est-elle définie de type String dans l'ActionForm ?

    car quand tu fais appel au validator de type integer, Struts va vérifier que le champ saisi dans le formulaire peut être converti en un Integer.

    EDIT : grillée par zorm.

    EDIT2 : Pour info, le sujet a déjà été traité dans cette discussion.

Discussions similaires

  1. Vérification de mon formulaire Invalide
    Par lolaalol dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 25/04/2013, 20h04
  2. vérification d'un entier
    Par zOoOm_10 dans le forum VB.NET
    Réponses: 2
    Dernier message: 30/04/2010, 18h12
  3. Vérification de validation d'un formulaire
    Par tom06440 dans le forum Langage
    Réponses: 8
    Dernier message: 21/09/2005, 15h29
  4. [VB6]Vérification pour un entier
    Par shinchan dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 20/01/2005, 16h28

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