Spring 3.0中找不到自定义页面及其他错误网页
我想显示自定义 404 页面未找到错误页面(等等)。我正在使用 Spring 3.0,不知道如何执行此操作。我知道我可以在 web.xml 中指定一个 jsp 页面来处理 404 错误。但我想要错误页面的 Spring 环境。所以我尝试简单地返回一个 ModelAndView ,它基本上是一个错误页面。但一旦我这样做,就会出现问题:
response.sendError(HttpServletResponse.SC_NOT_FOUND);
然后整个请求就会转发回容器的默认 404 页面。 Spring 3.0 中我们应该如何处理错误页面?
I want to display a custom 404 page not found error page (among others). I'm using Spring 3.0 and don't know how to do this.. I know I can specify a jsp page in web.xml to handle 404 errors. But I want Spring's environment for my error pages. So I tried simply returning a ModelAndView that's basically an error page. But the problem there is once I do this:
response.sendError(HttpServletResponse.SC_NOT_FOUND);
Then the whole request just gets forwarded back to the container's default 404 page. How are we supposed to handle error pages in Spring 3.0?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
在 Servlet 2.4 中,
response.sendError()
和response.setStatus()
的处理方式有所不同。前者由容器处理,但后者提供您自己提供响应的选项。这意味着,您必须使用response.setStatus(HttpServletResponse.SC_NOT_FOUND)。另请参阅 如何在 Spring 中返回 403 Forbidden MVC?In Servlet 2.4,
response.sendError()
andresponse.setStatus()
are treated differently. The former is handled by container, but the latter gives option to provide the response yourself. That means, you have to useresponse.setStatus(HttpServletResponse.SC_NOT_FOUND)
. Please also see How do I return a 403 Forbidden in Spring MVC?