0

私はStrutsフレームワークを初めて使用します。現在、Strutsフレームワークを使用してWebベースのアプリケーションを開発しています。

ご存知のとおり、Strutsアプリケーションではvalidate()、ユーザー定義のFormbeanクラスでをオーバーライドして、ユーザー入力を検証できます。同様に、Actionクラスのexecute()内でオーバーライドできますか?

可能であれば、ActionErrorオブジェクトをActionErrorsオブジェクトに追加した後、何をする必要がありますか?説明を手伝ってください。

4

1 に答える 1

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();
    }
    ...
}
于 2012-05-25T10:44:16.530 に答える