首先在strutsconfigxml文件中要写入
xxxxxxxxxxx 的部分是资源文件的路径
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" />这里如果是想使用多个***xml文件的话 value部分写法如下value=/WEBINF/validatorrulesxml/WEBINF/validationxml /WEBINF/validationxml /WEBINF/validationxml
在里定义需要验证的画面对应的Action的时候要加上validate=true
. 动态验证DynaValidatorForm的使用 (组合验证)
不需要再写对应的ActionForm只需在strutsconfigxml里把自己的ActionForm进行配置在formproperty里设置相应的项目比如说mytextmytextarea什么的执行的时候会动态生成ActionForm
如果需要在client端验证需要做如下处配置和修改
a 页面中的form中添加onsubmit=return validateRegistrationForm(this);
b 插入JavaScript占位代码
staticJavascriptjsp页面要在相应目录中可以在struts example中找到内容无须修改
在validatorxml中写入所希望的验证代码
.继承ValidatorForm类提供validate()方法
如果有特殊需要的验证可以直接Form类覆盖validate方法在其中进行灵活的验证
public ActionErrors validate (ActionMapping mappingHttpServletRequest request)
{ActionErrors errors = new ActionErrors();
if ( mytextequals(aaa) )
{//my exampleerrorsadd(mytextnew ActionError(mytexterror));
} return errors;}
此时如果写了这个方法就会屏蔽掉在validationxml中定义的验证部分换句话说就是系统运行时validationxml里对应此ActionForm的定义的错误验证部分不实行
如果不写这个方法的话系统运行时会进行validationxml里对应此ActionForm的定义的错误验证部分的操作
此类方法是在服务器端进行验证验证部分代码客户端不可见