[seasar-dotnet:1619] Re: ODP.NET 使用時にSQLFailureExceptionのCauseDbExceptionがnullになる

ikutirin [E-MAIL ADDRESS DELETED]
2010年 3月 19日 (金) 16:46:30 JST


状況報告です。

SQLFailureExceptionの
InnerExceptionのInnerExceptionにはきちんと
ODPの例外(OracleException)が入っていました。
ここからORA-XXXを取得できました。

なぜ必要かというと、
「ロックしないで絶妙なタイミングでの外部キーエラーや
重複エラーだけをキャッチしたいから」
です。


kubo <[E-MAIL ADDRESS DELETED]> wrote:

> 久保(jflute)です。
> 
> ikutirinさん、こんばんは
> 
> DBFlute.NETでは、特にODPとOLEの
> 区別をつけて処理してるわけではないので、
> その二つで例外の扱いに違いがあるのかもしれません。
> 
> ということで、自動生成されたクラス:
> InternalBasicHandler#DbExceptionHandler
> を(色々)書き換えて、素のODPとOLEで
> 例外の扱いにどういった違いがあるかどうか、
> 確認してみてください。
> (Messageの表示なども含めて)
> 
> また、一方で(参考までに)どういった要件でORA-XXXを
> 取得しようとしたのが教えていただけるとありがたいです。
> 
> #
> # 「OLEでは違った」っていう(検証)情報が非常に助かります
> #
> 
> 2010/3/17 ikutirin <[E-MAIL ADDRESS DELETED]>:
> > 有識者の方
> > ikutirinと申します。
> >
> > Seasar.Quil.dll:1.3.17.0、
> > DBFlute:0.8.9.12
> > で開発しています。
> >
> > 掲題の通り、
> > ODP.NET使用時にSQLFailureExceptionのCauseDbExceptionがnullになります。
> >
> > OleDbを使用すればOleDbExceptionが入っています。
> >
> > どこか設定が間違っているのでしょうか。
> >
> > ORA-XXXXを参照したいのですが取得方法はありませんでしょうか。
> >
> > よろしくお願いします。
> >
> > _______________________________________________
> > seasar-dotnet mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/seasar-dotnet
> >
> _______________________________________________
> seasar-dotnet mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-dotnet



seasar-dotnet メーリングリストの案内