【问题标题】:Different 404 error page depending on the user role不同的 404 错误页面取决于用户角色
【发布时间】:2015-02-22 08:38:55
【问题描述】:

我正在开发一个使用 spring mvc 和 spring-security 进行身份验证的 Web 应用程序。 所以我有三个角色: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页面

提前致谢

【问题讨论】:

    标签: spring spring-mvc jakarta-ee spring-security


    【解决方案1】:

    试试这个:

    web.xml:

    <error-page>
        <error-code>404</error-code>
        <location>/notFound</location>
    </error-page>
    

    错误控制器:

    @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";
            }
            // ...
        }
    }
    

    错误页面必须位于您的视图所在的目录中(以便视图解析器正确解析它们)。

    【讨论】:

      猜你喜欢
      • 2014-12-17
      • 2014-08-04
      • 1970-01-01
      • 1970-01-01
      • 2014-10-26
      • 2019-11-23
      • 1970-01-01
      • 2019-08-11
      • 1970-01-01
      相关资源
      最近更新 更多