dispatchAction 使用struts验证框架(转)
多页面公用一个form,提交到同一个action。
form继承自ValidatorForm,action继承自DispatchAction。
在validation.xml中配置验证规则。
遇到的问题是:
当从某一页面提交到action的时候由于form验证不通过,直接返回到错误信息页面,action的方法得不到执行。
我的解决方法:
在form中添加alidate方法,判断来源参数“validator”的之是否为空,如果为空则跳过验证,如果不为空则调用父类方法,根据validation.xml中的规则验证。
public ActionErrors validate(ActionMapping actionMapping,
HttpServletRequest httpServletRequest) {
ActionErrors errors = new ActionErrors();
String validator = httpServletRequest.getParameter("validator");
if(validator != null) {
return super.validate(actionMapping,httpServletRequest);
}
return errors;
}