记录web.xml中由error-page处理的所有Tomcat级异常

时间:2014-01-06 21:44:34

标签: tomcat logging

我的web.xml中有以下行,用自定义的用户友好错误页面替换堆栈跟踪呈现。

<error-page>
  <location>/error.html</location>
</error-page>

我想知道的是,是否可以让Tomcat将error-page元素处理的任何异常记录到日志文件中。如果我使用访问日志,我会看到500,但我无法看到堆栈跟踪。如何将堆栈跟踪记录到日志中?

1 个答案:

答案 0 :(得分:3)

您可以创建一个专用的servlet来处理错误。

<servlet>
        <servlet-name>ErrorHandler</servlet-name>
        <servlet-class>ErrorHandler</servlet-class>
</servlet>

<servlet-mapping>
        <servlet-name>ErrorHandler</servlet-name>
        <url-pattern>/ErrorHandler</url-pattern>
</servlet-mapping>

然后在<location>的{​​{1}}中引用它:

<error-page>

然后实现<error-page> <location>/ErrorHandler</location> </error-page> servlet,以便在转发到现有的用户友好错误页面之前记录原始异常。例如:

ErrorHandler