[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:
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:
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:
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:
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:
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