2010-02-19 63 views
2

我的應用程序產生一個內部服務器錯誤,運行在tomcat上,它打印出一個帶有給定錯誤的堆棧跟蹤。在Oracle上,它隱藏了錯誤並將其發佈到application.log如何更改內部服務器錯誤的處理?

是否可以通過部署描述符更改此設置?

500 Internal Server Error 

Servlet error: An exception occurred. The current application deployment 
descriptors do not allow for including it in this response. 

Please consult the application log for details. 
+0

您正在使用哪個Web服務器和/或Web容器(或應用程序服務器)? – cherouvim 2010-02-19 07:52:55

回答

3

您可以定義錯誤處理在你的web.xml網頁:

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

如果錯誤代碼是明確您的應用程序設置,確保它使用response.sendError(),而不是response.setStatus()因爲後者會忽略你的在web.xml中定義的自定義錯誤頁面

ps通過使用Google搜索錯誤消息,我假設這是一個運行在OAS上的Java web應用程序

+0

+1這是修改源代碼的唯一方法。 – 2010-02-19 07:59:18