在Struts动作类中注入静态引用

时间:2012-10-30 10:47:27

标签: spring struts

我们的应用程序包含struts和spring。 Struts操作类也在applicationContext.xml中配置为spring bean。 Spring类引用使用'property'连接到动作类。

对于Ex。,

的applicationContext.xml

<bean id="sampleAction" class="com.arizona.sample.action.SampleAction">
    <property name="sampleManager" ref="sampleManager" />
</bean>

在SampleAction中,我编写了一个静态方法,它使用'sampleManager'引用。所以,我已经将'sampleManager'配置为静态变量。在运行时,我在使用'sampleManager'的地方获得了NullPointerExcpetion。我得出的结论是'sampleManager'没有初始化。

有人可以帮助我吗?

P.S。:我提供了setSampleManager(..),并尝试使用@Autowired。

1 个答案:

答案 0 :(得分:0)

如果您发现自己试图从静态上下文(方法)与固有的非静态对象(sampleManager)进行交互,那么您的设计中存在一些根本性缺陷。返回并重构您的解决方案以采用适当的OO设计,不要试图用一些丑陋的黑客来修复它。