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

I think this post will help you out: Error catching

catch (GenericJdbcException ge) {

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

If your not using Hibernate you might need to change the error type.

于 2013-04-29T14:53:15.183 回答