自定义一个过滤器无法调用service的方法
2015-12-12 23:12
711 查看
今晚上,在做权限这块的时候,写了一个自定义过滤器来控制权限这块,运行的时候一直报空指针异常,,
我刚开始以为是spring没有注入呢,,我就看了一下,,结果还是不行,,,,,通过排查,代码没有写错,是spring注入问题,,应该和过滤器有关系,
我就尝试通过获取bean工厂看看,里面是否已经存在对象了,,,,
贴一下代码:
上面的通过bean工厂可以获取userFilterService对象,,至于为什么不能自动注入,,现在还不知道为什么,,有知道的说一下,,,,
到现在至少这样可以解决一下,,,,,
我刚开始以为是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对象,,至于为什么不能自动注入,,现在还不知道为什么,,有知道的说一下,,,,
到现在至少这样可以解决一下,,,,,
相关文章推荐
- JavaScript实现间歇性滚动
- 【学习】Javascript正则表达式——基础知识小结
- AngularJS 应用
- 冒泡排序和快速排序
- Linux GCC常用命令
- Java查询大文本
- Identical Binary Tree
- GCC常用命令详解
- avalon中数组所具备的方法与变量
- BC #66 GTW likes gt
- 使用ShareSDK实现新浪微博的一键分享功能
- memcache的简单介绍和使用
- Android post表单到服务器
- redis(9)、redis集群之redis Cluster使用
- select 查询优化
- jQuery工作原理解析以及源代码示例
- 如何安全登入mysql server之Login Paths
- 链表之打印两个有序链表的公共部分
- poj3461 Oulipo
- [hdoj试题]A+B for Input-Output Practice (IV)