`
jxdiamond
  • 浏览: 99722 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Spring AOP操作action时无法注入,报NullPointer异常

 
阅读更多
当使用Spring AOP对action层进行操作时,会出现注入失败的问题,出现空指针异常。
原因是一般struts2+spring应用中,spring的插件只负责为action的ioc部分,但并没有进行功能加强,即采用代理的机制,所有的action还是使用struts2进行管理,
在使用AOP后,这些action需要由spring进行管理,如果没有由spring进行代理,将出现注入失败。
解决办法:Struts2的一个特殊的constant,作用是确保Spring的自动装配策略总是被考虑的,struts.objectFactory.spring.autoWire.alwaysRespect,将其值设为true,
<constant name="struts.objectFactory.spring.autoWire.alwaysRespect" value="true" /> 

然后在所有的action上添加注解
@Component("action")//action根据具体情况修改
@Scope("prototype")
在struts的配置中使用action的名字进行配置,@Scope用于声明action使用多实例,这样AOP可以进行正常注入
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics