南阳隐者 2013-11-24 16:31 采纳率: 50%
浏览 2173
已采纳

SSH框架中Spring的依赖注入问题

我做了一个struts+hibernate3+spring的整合,我applicationContext .xml文件中已经配置了

<bean id="loginAction" class="com.web.LoginAction">
<property name="userDao" ref="userDao"></property>
</bean>

并且在LoginAction中设置的userDao变量和set和get方法,但是运行的时候userDao为空,我已经加入struts-spring-plugin- xx.jar 包,我设断点调试时,在启动tomcate时进入了userDao的set方法,我运行loginAction.action的时候这个userDao却依然为空,请大牛帮忙指点

  • 写回答

1条回答 默认 最新

  • 若生若水 2013-11-25 01:49
    关注

    个人观点:

    有可能是你的Struts 和Spring 整合的问题。

    测试方法:
    你可以写一个测试类, 用ClassPathXMLApplicationContext("applicationContext.xml")来创ApplicationContext, 然后获取LoginAction。

    最后你看下你的LoginAction中的userDao是不是为Null。

    如果是null, 那你需要检查一下你Spring的配置了,applicationContext.xml中配置是不是正确。
    如果能够获取到userDao对象, 那么你要检查的Struts和Spring的整合了。 就是你将Struts的Action有没有交给Spring来进行管理。

    希望我的回答对你有帮组。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?