java - Tomcat 自定义错误 Servlet

标签 java tomcat jakarta-ee servlets

我有一个自定义错误处理 servlet,它捕获所有可抛出的对象:

    <error-page>
      <exception-type>java.lang.Throwable</exception-type>
      <location>/Exception</location>
    </error-page>

事情是,这个 servlet 将执行解析的转发请求并设置一些自定义响应 header 。我希望它也适本地设置 http 状态代码,但似乎如果我将 http 状态代码设置为响应,然后我调用转发,响应代码自动变为 500。

为什么?

最佳答案

如果您试图遵守对 Throwable 的正确响应代码,那么我认为 500 是合适的。

500 Internal Server Error A generic error message, given when an unexpected condition was encountered and no more specific message is suitable.

如果你有意想要遵守其他事情,那么你可以通过以下方式做到这一点:

response.sendError(HttpServletResponse.SC_BAD_REQUEST);

response.sendError(HttpServletResponse.SC_FORBIDDEN );

我的意思是您可以提供任何想要的格式。

关于java - Tomcat 自定义错误 Servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31715328/

相关文章:

spring - 每个事务的单个对象实例

java - 获取数组的长度

java - 在类路径中找不到驱动程序。

java - 如何在 AspectJ 中获取 joinPoint.proceed() 结果的参数?

java - Android:如何在 Java 中以编程方式选中/取消选中 RadioGroup 中的 RadioButton

sql - 隐式数据类型不再适用于 oracle 11g

带有 SSL 的 Tomcat

java - 在运行时将 Javacode 注入(inject)已部署的 (Vaadin-)Application

jakarta-ee - 什么是 EJB,它有什么作用?

java - 程序化登录