目次 > 第2章 Server(Web)版チュートリアル > 2.11 例外処理(業務例外) > 2.11.2 業務例外ハンドリングの設定
2.11.2 業務例外ハンドリングの設定
前項で作成した業務例外クラスに対するハンドリング設定を行う。
「例外処理(システム例外)」同様、Struts設定ファイルに記述するが、業務例外の場合はアクションパスごとに記述する。
手順
本項では以下の作業が必要になる。
(1) メッセージリソースファイルの編集
エラー画面に表示するメッセージを追加する。
- “terasoluna-spring-thin-blank\sources\application-messages.properties”を開き、以下のメッセージを追加する。
errors.insert.error=業務エラーが発生しました。
(2) Struts設定ファイルの編集
- “terasoluna-spring-thin-blank\webapps\WEB-INF\userManager\struts-userManager-config.xml”を開き、登録処理のアクションにハンドリングの設定を追加する。
<!-- ======================================== アクションマッピング定義 --> <action-mappings type="jp.terasoluna.fw.web.struts.action.ActionMappingEx"> ・・・略・・・ <!-- 登録処理用アクション --> <action path="/userManager/insertBL" name="_userManagerForm" scope="session" validate="true" input="/userManager/insertSCR.do"> <!-- ここから --> <exception key="errors.insert.error" path="/error.jsp" className="jp.terasoluna.fw.web.struts.action.ExceptionConfigEx" handler="jp.terasoluna.fw.web.struts.action.DefaultExceptionHandler" type="jp.terasoluna.thin.tutorial.web.usermanager.exception.InsertException"> <set-property property="logLevel" value="error"/> </exception> <!-- ここまで --> <forward name="success" path="/userManager/resultSCR.do" /> <forward name="failure" path="/userManager/insertSCR.do" /> </action> ・・・略・・・
<exception>要素のkey属性に、(1)で追加したメッセージキー、type属性に、前項で作成した業務例外クラスを指定する。また、handler属性には、Server(Web)版が提供するDefaultExceptionHandlerを指定する。
その他の属性については、「例外処理(システム例外) 2.10.1 システム例外ハンドリングの確認」を参照のこと。