簡體   English   中英

如何不在瀏覽器上打印stacktrace

[英]How not to print stacktrace on the browser

我正在使用Web服務。 有時,在我進行測試時,異常會拋出並顯示在瀏覽器頁面上。 我不確定為什么即使“可能”引發異常的代碼也位於try-catch塊中,但異常仍顯示在瀏覽器中。

我當然可以使用Spring或異常映射器(使用JBoss)創建異常處理程序,但是仍然會拋出未映射的異常,並且我不希望將其打印在瀏覽器上。

我怎樣才能解決這個問題?

您可能正在捕獲已檢查的異常,而瀏覽器上顯示的異常可能是未檢查的異常。 一種方法是捕獲RuntimeException,它是所有未檢查的異常的父級,並在瀏覽器中顯示有意義的錯誤。 如果您是引發此類異常的API的所有者,則值得閱讀有關這些異常的小注釋。

在您的web.xml中,您可以定義這樣的錯誤頁面

<error-page>
    <error-code>404</error-code>
    <location>/WEB-INF/jsp/error.jsp</location>
</error-page>

<error-page>
    <error-code>403</error-code>
    <location>/WEB_INF/jsp/accessDenied.jsp</location>
</error-page>

等等......你可以有任何其他錯誤代碼錯誤尤其是巫500,我認為是更適合你的情況

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM