struts2除了可以继承并重写validate方法进行验证之外,还有一种更加方便以及灵活的方式,即通过xml文件的配置达到验证的效果,一般我们都通过这种方式进行表单的校验。
与validate一样,这种验证方式也分两种情况:
[list=1]
[*]执行默认的方法execute
[*]执行自定义的方法
[/list]
根据不同的情况我们需要新建不同的配置文件,默认情况下的配置文件名为:
当你自定义执行自己的方法时,那么你的配置文件名应为:
那么接下来就是这两个配置文件写法啦,下面是下载下来的struts-2.0.14-all.zip里strust2给我们提供的示例项目(apps目录下)struts2-blank-2.0.14.war里的一个验证配置文件:
与validate一样,这种验证方式也分两种情况:
[list=1]
[*]执行默认的方法execute
[*]执行自定义的方法
[/list]
根据不同的情况我们需要新建不同的配置文件,默认情况下的配置文件名为:
//假如我们的Action类名为:MyAction
MyAction-validation.xml
当你自定义执行自己的方法时,那么你的配置文件名应为:
//配置片段
<action name="login" class="package.MyAction" method="abc">
</action>
Action仍为上面的MyAction,但是这次你让它执行你自己的方法如:abc,
//下面为错误的文件名
那么你的验证的配置文件名应为:
MyAction-abc-validation.xml
//下面为正确的文件名
MyAction-login-validation.xml
注意:配置文件应放在与MyAction的相同目录下,而且当存在MyAction-validation.xml时,还是会执行MyAction-validation.xml里的验证
那么接下来就是这两个配置文件写法啦,下面是下载下来的struts-2.0.14-all.zip里strust2给我们提供的示例项目(apps目录下)struts2-blank-2.0.14.war里的一个验证配置文件:
/*** Login-validation.xml ***/
<!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="username">
<field-validator type="requiredstring">
<message key="requiredstring"/>
</field-validator>
</field>
<field name="password">
<field-validator type="requiredstring">
<message key="requiredstring"/>
</field-validator>
</field>
</validators>