有兩種方式使用該框架:
1,把驗證集中Action的驗證文件中;當驗證的內容少或者不同的action驗證的內容重複性小的時候使用。
配置:在action所在目錄下面建立action類名-validation.xml文件
示例配置:
<validators>
<field name="userBean.firstname">
<field-validator type="requiredstring">
<message>request firstname</message>
</field-validator>
</field>
<field name="userBean.age">
<field-validator type="required">
<message>request integer</message>
</field-validator>
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>should between ${min} and ${max}</message>
</field-validator>
</field>
</validators>
注意
a、userBean是action的成員變量名。
b、一個字段的多個驗證可以寫在一起,參見age
c、可以使用表達式引用設定的參數值,爲${參數名}的形式。
2,把驗證集中在bean的驗證文件中;當多個action都需要對相同的bean內容進行驗證的時候使用。
配置:這種方式把要具體驗證的bean的驗證項寫在另外一個validation文件中。需要兩個validation文件
示例配置:
第一個validation文件(與action同路徑):
<validators>
<field name="userBean">
<field-validator type="visitor">
<param name="context">user</param>
<param name="appendPrefix">true</param>
<message key="appendPrefix">user''s </message>
</field-validator>
</field>
</validators>
第二個validation文件(與bean同路徑)
<validators>
<field name="firstname">
<field-validator type="requiredstring">
<message>request firstname</message>
</field-validator>
</field>
<field name="age">
<field-validator type="required">
<message>request integer</message>
</field-validator>
<field-validator type="int">
<param name="min">1</param>
<param name="max">150</param>
<message>should between ${min} and ${max}</message>
</field-validator>
</field>
</validators>
注意的地方
a、userBean指定了action中變量的名字
b、visitor是固定寫法
c、user是另外一個validation文件的名字中的一部分
d、文件名命名:爲bean類名-context參數指定的值-validation.xml
e、文件中有字段名字的地方,不需要有userBean的前綴