我从 PL/SQL 过程中引发了一些应用程序错误。例如,我正在设置一些消息,
RAISE_APPLICATION_ERROR(-20001, 'message');
有什么办法,我可以'message'
在我调用这个过程的java程序的catch块的异常部分中显示?
我从 PL/SQL 过程中引发了一些应用程序错误。例如,我正在设置一些消息,
RAISE_APPLICATION_ERROR(-20001, 'message');
有什么办法,我可以'message'
在我调用这个过程的java程序的catch块的异常部分中显示?
如果你正在做catch (Exception e)
,message
应该可以从e.getMessage()
.
如果您正在做catch (SQLException e)
(或您的数据访问包的任何异常类型)message
应该仍然可以从e.getMessage()
. 此外,-20001
应该通过e.getErrorCode()
. 请注意,它可能以绝对值的形式出现(20001
而不是-20001
);你必须进行实验。
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.