1

PL/SQL プロシージャからいくつかのアプリケーション エラーが発生しています。たとえば、いくつかのメッセージを設定しています。

RAISE_APPLICATION_ERROR(-20001, 'message');

'message'この手順を呼び出したJavaプログラムのcatchブロックの例外セクションに表示する方法はありますか?

4

2 に答える 2

3

を行っている場合はcatch (Exception e)messageから利用できるはずですe.getMessage()

実行している場合catch (SQLException e)(またはデータ アクセス パッケージの例外の種類が何であれ)messageは、e.getMessage(). さらに、 は-20001で通過する必要がありe.getErrorCode()ます。20001(ではなく)絶対値として渡される場合があることに注意してください-20001。実験する必要があります。

于 2013-04-29T14:55:53.237 に答える
1

この投稿が役立つと思います:エラーキャッチ

catch (GenericJdbcException ge) {

IF (se.getErrorCode() == -20001)

Hibernate を使用していない場合は、エラー タイプを変更する必要があるかもしれません。

于 2013-04-29T14:53:15.183 に答える