我正在從PL/SQL過程中提出一些應用程序錯誤。我設置了一些信息,例如,在java程序中顯示來自raise_application_error的字符串
RAISE_APPLICATION_ERROR(-20001, 'message');
有什麼辦法,我可以從我稱之爲這個程序的Java程序的catch塊顯示異常部分'message'
?
我正在從PL/SQL過程中提出一些應用程序錯誤。我設置了一些信息,例如,在java程序中顯示來自raise_application_error的字符串
RAISE_APPLICATION_ERROR(-20001, 'message');
有什麼辦法,我可以從我稱之爲這個程序的Java程序的catch塊顯示異常部分'message'
?
如果您在做catch (Exception e)
,message
應該從e.getMessage()
可用。
如果您正在做catch (SQLException e)
(或任何異常類型適用於您的數據訪問包)message
仍然應該從e.getMessage()
可用。此外,-20001
應通過e.getErrorCode()
。請注意,它可能通過絕對值(20001
而不是-20001
);你必須嘗試。
我覺得這篇文章對您會有幫助:Error catching
catch (GenericJdbcException ge) {
IF (se.getErrorCode() == -20001)
如果你不使用Hibernate,你可能需要更改的錯誤類型。