关闭

Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameter

标签: 构造器注入Spring
9060人阅读 评论(0) 收藏 举报
分类:

问题

在练习spring构造器注入方式的小程序的时候报错:
Exception in thread “main” org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘poeticDuke’ defined in class path resource [com/springinaction/springidol/spring-idol.xml]: Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameters to avoid type ambiguities)

原因和解决方法

报错信息大体是说创建poeticDuke这个bean的时候出错,出错的原因是与构造器不匹配,给出的线索是为bean的构造器参数指定正确的索引、类或者名字,防止引起混淆。

构造器方法如下:

    public PoeticJuggler(int beanBags, Poem poem) {
        super(beanBags);
        this.poem = poem;
    }

XML配置文件如下:

    <bean id="sonnet29" class="com.springinaction.springidol.Sonnet29" />

    <bean id="poeticDuke" class="com.springinaction.springidol.PoeticJuggler">
        <constructor-arg value="15" />
        <constructor-arg ref="sonnet29" />
    </bean>

报错信息说参数不匹配,猜测应该是指constructor-arg元素内的参数类型不匹配,这里”15”和”sonnet29”应当分别对应于int原始数据类型和Poem类,15肯定是int类型这没问题,那么再看sonnet29,它是类Sonnet29的bean,然后我去看类Sonnet29是怎么写的,才发现忘记去实现Poem接口了,然后加上接口,程序正常。

public class Sonnet29 implements Poem {/*Here goes body.*/}
1
1
查看评论

Could not resolve matching constructor (hint: specify index/type/name arguments for simple paramet

错误原因:     对象的属性类型与applicationContext.xml配置文件ioc的属性类型不一致 例如:             &#...
  • RiceToLife
  • RiceToLife
  • 2016-07-17 15:39
  • 3467

Spring 依赖注入(hint: specify index and/or type arguments for simple parameters to avoid type ambiguiti)

class="com.sech.zengzhi.service.config.FeeCodeSogouConfig"> 错误信息:16:37:18,109 ERROR ContextLoa...
  • qdgengwenfei
  • qdgengwenfei
  • 2013-01-14 16:39
  • 4766

Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameter

报错:Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameter
  • u011072139
  • u011072139
  • 2017-08-24 15:22
  • 332

Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameter

报这个错误,一般是参数和对应的接口需要的参数对应不上。我遇到这个问题是在网上搜redis配置,其中我把jedis包升级了,然后配置文件中的实体类中传的参数没对应上。用java反编译工具看里面的代码,可以看到实体类的属性,这个属性要和xml配置文件中的参数对应起来就没问题了
  • MeiX505
  • MeiX505
  • 2017-05-25 16:24
  • 671

jedis应用实例

最近将redis整合到项目中,将redis作为cache使用,未来进一步作为消息推送使用。我通过jedis和spring配置实现操作redis。         spring配置
  • zouqingfang
  • zouqingfang
  • 2015-07-27 17:07
  • 1581

Error creating bean with name 'amqpTemple' Could not resolve matching constructor (hint: specify

配置spring rabbitmq 环境遇到 严重: Exception sending context initialized event to listener instance of class com.bimatrix.revit.web.ContextLoaderListener org...
  • AlbertFly
  • AlbertFly
  • 2016-05-25 23:59
  • 2834

hint: specify index/type/name arguments for simple parameters to avoid type ambiguities

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'IOrderDao': Could not resolve matching cons...
  • mxj588love
  • mxj588love
  • 2017-11-27 16:31
  • 160

Io 异常: Got minus one from a read call

Io 异常: Got minus one from a read call错误日志:java.sql.SQLException: Io 异常: Got minus one from a read call at oracle.jdbc.driver.DatabaseError.throwSqlEx...
  • jiyingying_up
  • jiyingying_up
  • 2016-08-30 12:58
  • 795

java.sql.SQLException: Io 异常: Got minus one from a read call

http://quicker.iteye.com/blog/1740690   Tomcat服务器下的应用连接Oracle时报错,出现以下异常: java.sql.SQLException: Io 异常: Got minus one from a read call 查询数...
  • caolaosanahnu
  • caolaosanahnu
  • 2014-03-28 20:03
  • 1993

Got minus one from a read call的解决方法

【问题描述】当连接Oracle数据库的时候遇到 - Got minus one from a read call 错误【问题解决】当遇到这个异常的时候,一般都是因为OracleTNSListener服务没有正确启动,打开‘服务’,找到OracleTNSListener,重启此服务就行了,要是重启不成...
  • virgoboy2004
  • virgoboy2004
  • 2011-03-04 09:44
  • 5503
    个人博客
    作为一只颜狗,csdn已经无法满足我了,想要获得更优秀的阅读体验的同学可以访问我的个人网站哦!
    白墨的博客 | Ink's Blog
    个人资料
    • 访问:301918次
    • 积分:3283
    • 等级:
    • 排名:第12264名
    • 原创:72篇
    • 转载:1篇
    • 译文:0篇
    • 评论:73条
    博客专栏
    最新评论