アクションクラスでエラーを表示するには、以下のようにします。
public class dispDetailAction extends Action{
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest req,
HttpServletResponse res) throws Exception{
ActionErrors errors = new ActionErrors();
// ロジック
if(!errors.isEmpty()){
errors.add(ActionMessages.GLOBAL_MESSAGE,new ActionMessage("msg1");
saveErrors(req,errors);
return mapping.findForward("error");
}
return mapping.findForward("success");
}
エラーメッセージはstruts-config.xmlで指定しているメッセージリソースから取得します。上記例では、キーはmsg1です。
エラーが複数ある場合はActionErrorsクラスのaddメソッドを複数実行します。
最後にsaveErrorsメソッドでリクエストとActionErrorsを紐付けます。
これで画面にはキー値msg1に対応する値が表示されます。