一尘不染

有没有一种方法可以配置Tomcat的web.xml中所有错误代码的一个自定义错误页面的使用?

tomcat

如标题中的所述,我想更改tomcat中的默认错误页面并执行以下操作:

<error-page>
  <error-code>500</error-code>
  <location>/error_500.html</location>
</error-page>

 <error-page>
   <error-code>404</error-code>
   <location>/error_404.html</location>
</error-page>

是否可以使用通配符错误代码,例如

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

(上面的示例不起作用,但是还有另一种方法吗?)

谢谢


阅读 513

收藏
2020-06-16

共1个答案

一尘不染

不,Tomcat中没有办法。

Servlet 3.0规范支持如下的全局错误页面:

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

因此,从理论上讲,它至少应在Tomcat 7.0中运行。但是在Tomcat
7.0中没有正确实现。我曾经报道有关此问题的52135,但他们否认了。尽管它可以在其他Servlet
3.0容器上使用。

但是,您可以通过实现特定于Tomcat的ErrorReportValve类(然后注册为)来解决此问题<Host errorReportValveClass>

2020-06-16