Struts2.0.9でActionの処理結果によって遷移先を変える
Action内部でビジネスロジックを呼び出したりするときに、処理結果によって遷移先を変えることがある。その実装方法をメモ。
struts.xmlで遷移先を複数指定する
処理に成功したら「complete.jsp」へ遷移、失敗したら「userreg.jsp」へ遷移する。
<action name="userreg" class="com.daipresents.struts209.action.UserRegAction"> <result name="success">/WEB-INF/jsp/complete.jsp</result> <result name="error">/WEB-INF/jsp/userreg.jsp</result></action>
Action内部で遷移先を動的に変更
ユーザ名が未入力の場合にerrorを返し、それ以外ではsuccessを返すようにする。これで、処理結果によってstruts.xmlで定義した遷移先に移動することができる。
//入力チェックif(userVO.getUserName() == null || "".equals(userVO.getUserName())){ this.errorMsg = "ユーザ名が入力されていません。"; return "error";}
//ユーザ登録処理
return "success";




