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] Validation sous condition !


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
    Mai 2007
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut [Validator] Validation sous condition !
    Bonjour,

    J'ai un objet A qui contient un attribut ab
    Cet attribut est un numérique à 10 chiffres (obligatoirement), et je voudrais le tester à l'aide d'un validator sous la condition que l'objet A existe (car il est possible dans mon formulaire que A n'existe pas !)

    J'ai donc fait un validator qui ressemble à cela :
    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
    <form name="monForm">
        <field property="A.ab" depends="validwhen,minlength,maxlength,integer">
            <arg0 name="minlength" key="${var:minlength}" resource="false"/>
    	<arg1 name="maxlength" key="${var:maxlength}" resource="false"/>
    	<var>
    	    <var-name>test</var-name>
    	    <var-value>(A != null)</var-value>
    	</var>
    	<var>
    	    <var-name>minlength</var-name>
    	    <var-value>10</var-value>
    	</var>
    	<var>
    	    <var-name>maxlength</var-name>
    	    <var-value>10</var-value>
    	</var>
        </field>
    </form>
    Seulement ca ne fonctionne pas !, et j'ai une erreur qui ressemble à ceci :
    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
    ValidatorAction.java executeValidationMethod 579 [09:48:45] [ERROR] Unhandled exception thrown during validation: Null property value for 'A' 
    org.apache.commons.beanutils.NestedNullException: Null property value for 'A'
    	at org.apache.commons.beanutils.PropertyUtilsBean.getNestedProperty(PropertyUtilsBean.java:669)
    	at org.apache.commons.beanutils.PropertyUtilsBean.getProperty(PropertyUtilsBean.java:715)
    	at org.apache.commons.beanutils.PropertyUtils.getProperty(PropertyUtils.java:290)
    	at org.apache.commons.validator.util.ValidatorUtils.getValueAsString(ValidatorUtils.java:102)
    	at org.apache.struts.validator.validwhen.ValidWhen.validateValidWhen(ValidWhen.java:103)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    	at java.lang.reflect.Method.invoke(Method.java:324)
    	at org.apache.commons.validator.ValidatorAction.executeValidationMethod(ValidatorAction.java:544)
    	at org.apache.commons.validator.Field.validateForRule(Field.java:796)
    	at org.apache.commons.validator.Field.validate(Field.java:876)
    	at org.apache.commons.validator.Form.validate(Form.java:288)
    	at org.apache.commons.validator.Validator.validate(Validator.java:351)
    	at org.apache.struts.validator.ValidatorForm.validate(ValidatorForm.java:116)
    Alors est ce que j'ai une mauvaise syntaxe, une mauvaise méthode, ou pire, que ce que je cherche à faire n'est pas possible...

    Merci d'avance de votre aide !

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    85
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut
    Manque t il des précisions ?
    Avez vous des questions ?

  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
    Mais si l'objet A n'existe pas, tu ne devrais donc pas pouvoir saisir ou modifier la propriété ab de l'objet A et tu ne devrais donc pas permettre le submit du formulaire.

    Il faudrait donc plutôt ajouter le tag logic:present dans la page jsp pour ne permettre la saisie ou la modification de la propriété ab et le submit du formulaire que si l'objet A est différent de null.

    Et donc, dans le fichier validation.xml, tu remplaces la règle validwhen par une règle required.

Discussions similaires

  1. Validation, champs obligatoires sous conditions
    Par totot dans le forum jQuery
    Réponses: 18
    Dernier message: 21/02/2014, 22h56
  2. Validation formulaire sous condition
    Par BRUNO71 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/06/2013, 12h51
  3. plugin Validation, champs obligatoires sous conditions
    Par st4nfield dans le forum jQuery
    Réponses: 3
    Dernier message: 16/12/2009, 11h26
  4. Valider un formulaire sous condition
    Par dreeve dans le forum Langage
    Réponses: 2
    Dernier message: 30/06/2007, 00h15
  5. Réponses: 8
    Dernier message: 05/02/2006, 10h39

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