Terasoluna2系でデータベースアクセス例外のエラーコードを取得したいと考えています。
よろしくお願いいたします。
java初学者です
terasoluna2系において、オラクルDBに対してspring-ibatisを使ってアクセスをしています。
実現したいことは、例外発生時にORAコードを取得することです。
SQLExceptionをキャッチしてオラクルの例外コードを取得したいのですが、Springの例外に変換されていることについての理解が薄く、具体的な手段が分かっていません。
以下のようなイメージの物を、実装したいと思っています
java
1 try{ 2 // SQL発行 3 updateDAO.execute("update", paramMap); 4 }(catch SQLException e){ // ---① 5 // エラーコード判定 6 if(e.getErrorCode() == zzzz){ 7 // 想定内のエラーならば 8 // メッセージをセットして正常処理に流す 9 message = "データ登録失敗でした"; 10 // ロールバックを宣言(?) // ---② 11 }else{ 12 // 例外が想定外ならフレームワークに投げる 13 throw new SystemException(e) 14 } 15} 16// 以下正常処理 17 18result.setAAA(message); 19return result;
①の部分をどうしたらよいか・・・と考えています。
形にこだわってはいませんので、ORAコードを取得して、処理を続行できることを探しています。
その後は、②でロールバックを宣言できればとも考えていますが、まずは①の部分をと考えてます。
どうぞよろしくお願いいたします。
仕様
Terasoluna 2.0.2
Spring flamework 2.5
Strurs 1.2
ibatis 2.3
Oracle 11g
JAVA 1.6
回答1件
あなたの回答
tips
プレビュー