2010-02-19 2 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

Какой веб-сервер и/или веб-контейнер (или сервер приложений) вы используете? – cherouvim

ответ

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 Отправляя сообщение об ошибке, я предполагаю, что это веб-приложение Java, работающее на OAS

+0

+1 Это единственный способ изменить источник. –