• 错误调试记录2


    bean 1

    <bean id="rebateInBo" class="com.shunwang.swpay.rebate.bo.imp.RebateInBoImp" >

          <property name="dao">
               <ref bean="rebateInDao"/>
          </property>
          <property name="rebateOutBo">
               <ref bean="rebateOutBo"/>
          </property>
         
           <property name="bussPartnerBo">
               <ref bean="bussPartnerBo"/>
          </property>
         
     </bean>

    bean 2

    <bean id="rebateOutBo" class="com.shunwang.swpay.rebate.bo.imp.RebateOutBoImp">
          <property name="dao">
               <ref bean="rebateOutDao"/>
          </property>
          <property name="rebateInBo">
               <ref bean="rebateInBo"/>
          </property>
     </bean>

    启动异常:

    [ERROR]2011-03-11 14:53:29,687 MESSAGE : Context initialization failed
    org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'rebateInBo': Bean with name 'rebateInBo' has been injected into other beans [rebateOutBo] in its raw version as part of a circular reference, but has eventually been wrapped (for example as part of auto-proxy creation). This means that said other beans do not use the final version of the bean. This is often the result of over-eager type matching - consider using 'getBeanNamesOfType' with the 'allowEagerInit' flag turned off, for example.
     at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:431)
     at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
     at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
     at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
     at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)

    解决方法:

    lazy-init="true" 加到一个bean的属性里就好了,如下:

    <bean id="rebateInBo" class="com.shunwang.swpay.rebate.bo.imp.RebateInBoImp"  lazy-init="true">

          <property name="dao">
               <ref bean="rebateInDao"/>
          </property>
          <property name="rebateOutBo">
               <ref bean="rebateOutBo"/>
          </property>
         
           <property name="bussPartnerBo">
               <ref bean="bussPartnerBo"/>
          </property>
         
     </bean>


     

  • 相关阅读:
    软件性能中几个主要的术语
    (转)性能测试指标
    不同角度关注的软件性能
    《跃迁:从技术到管理的硅谷路径》读书笔记
    Mysql基础知识—索引
    Python学习笔记系列——高阶函数(map/reduce)
    Python学习笔记系列——高阶函数(filter/sorted)
    (转)Python学习笔记系列——Python是一种纯粹的语言
    Python学习笔记系列——读写文件以及敏感词过滤器的实现
    双向链表(Double-Linked List)
  • 原文地址:https://www.cnblogs.com/alaricblog/p/3278204.html
Copyright © 2020-2023  润新知