【发布时间】:2013-11-23 08:01:48
【问题描述】:
在带有 Spring Security (3.2.0.RC2) 和 Sitemesh (2.4.2) 的 Spring MVC (3.2.4) 应用程序中,web.xml 文件具有以下条目:
<error-page>
<error-code>403</error-code>
<location>/error?code=403</location>
</error-page>
映射到 ErrorController:
@RequestMapping("error")
public String displayErrorPage(
@RequestParam(value = "code", defaultValue = "0") int code,
Model model, final HttpServletRequest request, Principal principal) {
// ...
return "errorPage";
}
通过 InternalResourceViewResolver 显示 errorPage.jsp(应用中没有其他视图解析器)。
当未经授权的用户尝试访问受保护的页面时,安全性工作正常,并且显示 errorPage.jsp,但该页面没有被修饰。应用程序中的所有其他页面都被装饰而没有任何问题,并且 errorPage.jsp 与其他被装饰而没有任何问题的 JSP 位于同一目录中。此应用程序使用 Servlet 3.0 规范。
【问题讨论】:
标签: java jsp spring-mvc spring-security sitemesh