我可以覆盖动作类执行方法内的struts validate方法吗?

时间:2012-05-25 10:38:34

标签: validation struts execute

我是Struts框架的新手,目前我正在使用struts框架开发基于Web的应用程序。

我们知道,在Struts应用程序中,我们可以覆盖用户定义的Formbean类中的validate()来验证用户输入,同样可以在Action类的execute()中覆盖它吗?

如果可以,在将ActionError对象添加到ActionErrors对象后,我需要做什么?请帮我解释一下。

1 个答案:

答案 0 :(得分:2)

你不能覆盖它,因为Action没有定义任何validate()方法。但是你可以在一个动作中执行验证,是的:

public ActionForward execute(ActionMapping mapping,
                             ActionForm form,
                             HttpServletRequest request,
                             HttpServletResponse response) {
    ...
    ActionMessages errors = doSomeValidation();
    if (!errors.isEmpty()) {
        saveErrors(request, errors);
        return mapping.getInputForward();
    }
    ...
}