Tomcat忽略我的自定义错误servlet /页面

时间:2010-09-26 16:41:09

标签: java jsp tomcat servlets error-handling

我有一个让我发疯的问题。不确定这是Tomcat中的一个错误,还是仅仅是我的愚蠢,但这里有。

我设置了自定义错误servlet,like this。设置工作,如果我模拟异常或404错误等servlet运行,错误页面显示核心,响应代码是500或400 ...好吧,它的工作。

但是上面的设置不适合我,我需要转发到JSP(我在servlet中执行操作,将适当的数据放入请求范围并转发到JSP进行显示)。

所以,在我的servlet中的doPost / doGet方法中我做了:

getServletContext().getRequestDispatcher(...).forward(request, response);

新设置最多可达到一点。也就是说,servlet运行并转发到JSP,JSP执行(我在其中放置了日志指令并执行它们)但是在浏览器中我得到了默认的tomcat错误页面,而不是我的JSP的内容。

我也在我的JSP中设置了<%@page isErrorPage="true"%>但是它是否存在并不重要,在JSP执行后它的响应消失了,我在浏览器中得到了默认的Tomcat错误页面。

现在有人为什么这不起作用?我要去crazzzzzzzyyyyyyyyy!

谢谢大家!

P.S。我正在使用Tomcat 5.5.26。

1 个答案:

答案 0 :(得分:1)

很可能只是抛出异常。自定义错误页面是否显示异常详细信息?如果没有,您是否检查了/logs文件夹中的服务器日志以查看是否发生了异常?如果您显示${exception}(在错误页面中有isErrorPage="true"时)错误页面会说什么?请注意,isErrorPage="true"不应该包含在“普通”JSP文件中。