自定义一个过滤器无法调用service的方法

来源:互联网 发布:手机截图软件 编辑:程序博客网 时间:2024/04/25 10:04

今晚上,在做权限这块的时候,写了一个自定义过滤器来控制权限这块,运行的时候一直报空指针异常,,

我刚开始以为是spring没有注入呢,,我就看了一下,,结果还是不行,,,,,通过排查,代码没有写错,是spring注入问题,,应该和过滤器有关系,

我就尝试通过获取bean工厂看看,里面是否已经存在对象了,,,,

贴一下代码:

   ApplicationContext ac =                    WebApplicationContextUtils.getWebApplicationContext(req.getSession().getServletContext());                                UserFilterService userFilterService = (UserFilterService)ac.getBean("userFilterService");                boolean roleFalg = userFilterService.getRoleResult(userInfo, ac);                System.out.println("uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu=" + userFilterService);                if (roleFalg)                {                    //具有后台角色的继续通过                    chain.doFilter(req, res);                }                else                {                    //不具备访问后台的角色的不给通过,跳转到登陆界面                    res.sendRedirect(basePath + "/login.xhtml");                }


上面的通过bean工厂可以获取userFilterService对象,,至于为什么不能自动注入,,现在还不知道为什么,,有知道的说一下,,,,

到现在至少这样可以解决一下,,,,,

 

0 0
原创粉丝点击