【问题标题】:New Servlet 3.0 global error page feature does not work on Tomcat 7新的 Servlet 3.0 全局错误页面功能在 Tomcat 7 上不起作用
【发布时间】:2011-12-21 06:56:06
【问题描述】:

Servlet 3.0 规范规定可以在web.xml 中列出全局错误消息以包含所有服务器错误。

例子:

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

旧方法:

<error-page>
    <error-code>401</error-code>
    <location>/error.jsp</location>
</error-page>

在 Tomcat 7 中将这个新方法添加到我的 web.xml 时,它不起作用。这是如何引起的,我该如何解决?

【问题讨论】:

    标签: java tomcat servlets error-handling tomcat7


    【解决方案1】:

    这将是 Tomcat 7 中的一个错误。例如,它在 Glassfish 3 上运行良好。

    是时候向 Tomcat 人员报告错误了,所以我这样做了:issue 52135


    更新:它已被关闭,因为 Servlet 规范“不清楚”&lt;exception-type&gt;&lt;error-code&gt; 变为可选。这仅在Servlet 3.0 spec 的图 14-10 中显示,并且在文本中没有字面意思,即使新的 Servlet 3.0 XSD 确认了此更改。这后来被重新打开,并发布了指向nice blog article 的链接,这再次证实了这一点。现在我们只需要等待 Tomcat 开发人员真正修复它。据我所知,基于 Tomcat 源代码,这不会是一个简单的修复,这也许就是它这么快关闭的原因。


    更新 2:这个问题终于在 Tomcat 7.0.29 中得到修复和实现。

    【讨论】:

    • 这是我怀疑的。感谢您提交问题!
    • 您打开的问题已关闭,因为它不够具体。
    • 我后来发表了评论。随时使用指向旧问题的链接重新发布问题。我不会再和 Tomcat 的家伙争论了。
    • 从 7.0.22 开始,团队似乎将其作为增强功能重新打开。它保持打开状态。
    • Tomcat 版本只是报告问题时的版本。目前已经是 7.0.27。
    猜你喜欢
    • 2013-06-20
    • 2012-07-25
    • 2013-01-09
    • 1970-01-01
    • 1970-01-01
    • 2012-10-03
    • 1970-01-01
    • 1970-01-01
    • 2012-07-24
    相关资源
    最近更新 更多