Проверка Struts2

В Struts2 можем ли мы иметь как XML-файл проверки (ActionClass-method-validation.xml), так и метод проверки, реализованный в классе Action.

Я спрашивал, поскольку этот xml проверки не вызывается в моей ситуации.


person Colours    schedule 27.09.2010    source источник


Ответы (2)


надеюсь, вы создали правильный файл правил actionname-validation.xml (примечание: actionname чувствителен к регистру) и сохранили его в том же пакете, что и класс Action.

Кроме того, если у вас не настроен перехватчик по умолчанию, добавьте перехватчик проверки в Struts.xml в этом конкретном теге действия.

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

Дополнительные сведения о структуре проверки см. на странице http://struts.apache.org/2.0.14/docs/validation.html и http://java.dzone.com/articles/struts2-tutorial-part-37

person lucentmind    schedule 28.09.2010
comment
Я уже добавил все детали, как вы сказали. Ссылка dzone была очень полезной. Спасибо за информацию - person Colours; 28.09.2010

<?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>

Просто пройдите его и проверьте правильность

person Sarin Jacob Sunny    schedule 05.12.2011