这里是我的xml配置:Spring MVC @Autowire不工作 - 循环依赖?
<bean id="diameterClient" class="com.rory.ptspsim.diameterclient.DiameterClient" scope="singleton" init-method="start">
<constructor-arg index="0"><value>${pcca.host}</value></constructor-arg>
<constructor-arg index="1"><value>${pcca.port}</value></constructor-arg>
<constructor-arg index="2" value="com.rory.djgx.message"/>
<constructor-arg index="3" value="com.rory.djgx.avp"/>
<constructor-arg index="4">
<list>
<ref bean="asrHandler"/>
<ref bean="aaaHandler"/>
<ref bean="ceaHandler"/>
<ref bean="dwaHandler"/>
<ref bean="staHandler"/>
</list>
</constructor-arg>
</bean>
<bean id="asrHandler" class="com.rory.ptspsim.messagereceivers.ASRHandler"/>
<bean id="aaaHandler" class="com.rory.ptspsim.messagereceivers.AAAHandler"/>
<bean id="ceaHandler" class="com.rory.ptspsim.messagereceivers.CEAHandler"/>
<bean id="dwaHandler" class="com.rory.ptspsim.messagereceivers.DWAHandler"/>
<bean id="staHandler" class="com.rory.ptspsim.messagereceivers.STAHandler"/>
这里是ASRHandler类的开始:
public class ASRHandler implements DiameterMessageHandler
{
@Autowired
private DiameterClient diameterClient;
任何人都不会有为什么这心不是工作的任何想法?我意识到处理程序类和DiameterClient类相互依赖,但我虽然已经考虑到了这一点。
下面是从日志消息:
org.springframework.beans.factory.BeanCreationException:错误创建名称为豆“diameterClient”在ServletContext的资源[/WEB-INF/applicationContext.xml的]定义:不能在使用键[0]设置构造函数参数时解析对bean'asrHandler'的引用;嵌套的例外是org.springframework.beans.factory.BeanCreationException:错误创建名为“asrHandler”豆:资源依赖注射失败;嵌套的异常是org.springframework.beans.factory.BeanCurrentlyInCreationException:创建名为'diameterClient'的bean时出错:请求的bean当前正在创建:是否存在无法解析的循环引用?
谢谢!
将会有更多的启发记录其他地方。它会告诉你什么是错的。 – skaffman 2012-02-24 15:32:24