使用基于XML配置方式实现输入校验时,Action也需要继承ActionSupport,并且提供校验文件,校验文件和action类放在同一个包下,文件的取名格式为:ActionClassName-validation.xml,其中ActionClassName为action的简单类名,-validate为固定写法,如果Action类为cn.itcase.UserAction,那么文件的取名为UserAction-validate.xml,下面是校验文件模板、
<!DOCTYPE validators PUBLIC
"-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd">
<validators>
<field name="username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名不能为空</message>
</field-validator>
</field>
<field name="mobile">
<field-validator type="regex">
<param name="expression"><![CDATA[^1[358]\\d{9}$]]></param>
<message>手机号格式不正确</message>
</field-validator>
</field>
</validators>
<field>指定action中要校验的属性,<field-validator>指定校验器,上面指定的校验器requiredstring是由系统提供的,系统提供了能满足大部分验证需求的校验器,这些校验器的定义可以在xwork-2-x.jar中的com.opensymphony.xwork2.validate.validators下的default.xml中找到.
<message>为校验失败后的提示信息,如果需要国际化,可以为message指定key属性,key的值为资源文件中的key.
在这个校验文件中,对action中字符串的类型的username属性进行验证,首先要求调用trim()方法去掉空格,然后判断用户名是否为空