我正在使用spring mvc开发一个Web应用程序,并使用spring-security进行身份验证。 所以我有三个角色:ROLE_ADMIN,ROLE_CONS和ROLE_CP 我有三个404页404CP.jsp,404Cons.jsp和404Admin.jsp 但问题是我只知道如何在web.xml文件中为整个应用程序指定错误页面:
<error-page>
<error-code>404</error-code>
<location>/presentation/404CP.jsp</location>
</error-page>
所以我想知道如何为每个角色指定不同的404页面
提前致谢
答案 0 :(得分:0)
试试这个:
的web.xml:
<error-page>
<error-code>404</error-code>
<location>/notFound</location>
</error-page>
ErrorController:
@Controller
public class ErrorController {
@RequestMapping("/notFound")
public String notFound(HttpServletRequest request) {
if (request.isUserInRole("ROLE_ADMIN")) {
return "404Admin";
} else if (request.isUserInRole("ROLE_CONS")) {
return "404Cons";
}
// ...
}
}
错误页面必须位于您的视图所在的目录中(以便视图解析程序可以正确解析它们)。