2010-09-27 6 views
1

Dans Struts2, pouvons-nous avoir à la fois xml de validation (ActionClass-method-validation.xml) et valider la méthode implémentée dans la classe Action.Struts2 Validation

Je demandais que cette validation xml ne soit pas invoquée dans ma situation.

Répondre

1

espérons que vous avez créé le fichier de règles correctame-validation.xml (note- actionname est sensible à la casse) et conservé dans le même paquet que la classe Action.

De même, si vous n'avez pas d'intercepteur par défaut configuré, ajoutez un intercepteur de validation dans Struts.xml dans ce tag d'action particulier.

<action name="welcome" class="com.abc.web.WelcomeAction"> 
<interceptor-ref name="validation" /> 
<result name="success" >hello.jsp</result> 
</action> 

Se reporter pour plus de détails sur le cadre de validation à http://struts.apache.org/2.0.14/docs/validation.html et http://java.dzone.com/articles/struts2-tutorial-part-37

+0

J'ai déjà ajouté tous les détails que vous avez dit. Le lien dzone était très utile. Merci pour l'information – Colours

0
<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN" 
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd"> 
<validators> 
<field name = "firstname"> 
<field-validator type = "stringlength"> 
<param name = "minlength">3</param> 
<param name ="maxlength">18</param> 
<message>Please Enter Your First Name</message> 
</field-validator> 
</field> 

<field name = "lastname"> 
<field-validator type = "required"> 
<message>Please Enter Your Last Name</message> 
</field-validator> 
</field> 

<field name = "mobilenumber"> 
<field-validator type = "int"> 
<message>Please Enter Your Mobile Number</message> 
</field-validator> 
</field> 

<field name = "dob"> 
<field-validator type = "date"> 
<message>Please Enter Your Date Of Birth</message> 
</field-validator> 
</field> 

<field name = "emailid"> 
<field-validator type = "email"> 
<message>Please Enter Email ID Correctly</message> 
</field-validator> 
</field> 

<field name = "hometown"> 
<field-validator type = "required"> 
<message>Please Enter Your Home Town</message> 
</field-validator> 
</field> 

<field name = "currentcity"> 
<field-validator type = "required"> 
<message>Please Enter Your Current City</message> 
</field-validator> 
</field> 

<field name = "username"> 
<field-validator type = "stringlength"> 
<param name = "minlength">3</param> 
<param name ="maxlength">18</param> 
<message>Please Enter Your User Name</message> 
</field-validator> 
</field> 

<field name = "password"> 
<field-validator type = "stringlength"> 
<param name = "minlength">8</param> 
<message>Password must Contain minimum of 8 Characters</message> 
</field-validator> 
</field> 

<validator type = "expression"> 
<param name = "expression">password.equals(password1)</param> 
<meaasage>Passwords Does Not Match</message> 
</validator> 
</validators> 

Il suffit de passer par et vérifier si son correcte