org.springframework.beans.factory.UnsatisfiedDependencyException

本文详细解析了一个导致web应用无法启动的Spring配置错误,具体为构造函数参数重复定义的问题,并提供了相应的解决方法。通过删除重复定义的参数名,成功解决了错误并使得应用恢复正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、错误描述:

此错误导致了web 应用无法启动,根据日志内容分析该问题属于SPRING配置问题。

二、具体错误信息:

Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisDao' defined in ServletContext resource [/WEB-INF/classes/dataSource-bean.xml]: Unsatisfied dependency expressed through constructor argument with index 1 of type [java.util.Set]: Ambiguous constructor argument types - did you specify the correct bean references as constructor arguments?


三、解决方法

查询Spring配置文件,发现index=“1”的参数,使用了重复的定义。根据SPRING的注入规则,constructor-arg 中不能同时出现 index\name\type的定义。如下:

<bean id="redisDao" class="com.aspire.dao.RedisDao">

<constructor-arg index="0" ref="jedisConfig" />

<constructor-arg index="1" name="sentinels">

      <set>

        <value>172.0.0.1:26379</value>

        <value>172.0.0.1:26479</value>

        <value>172.0.0.1:26579</value>

      </set>

    </constructor-arg>

</bean> 

——删除index="1"后面的name="sentinels"问题解决。

<bean id="redisDao" class="com.aspire.dao.RedisDao">

<constructor-arg index="0" ref="jedisConfig" />

<constructor-arg index="1">

      <set>

         <value>172.0.0.1:26379</value>

         <value>172.0.0.1:26479</value>

         <value>172.0.0.1:26579</value>

      </set>

    </constructor-arg>

</bean> 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值