Spring—nested exception is org.springframework.beans.factory.BeanCurrentlyInCreationException

来源:互联网 发布:软件photocard 编辑:程序博客网 时间:2024/06/07 22:48

启动tomcat报错:
Unable to instantiate Action, docBorrowAction,  defined for 'informationcue' in namespace '/docborrow'Error creating bean with name 'docBorrowAction' defined in ServletContext resource [/WEB-INF/config/applicationContext-framework.xml]: Cannot resolve reference to bean 'docBorrowManager' while setting bean property 'docBorrowManager'; nested exception is org.springframework.beans.factory.BeanCurrentlyInCreationException: Error creating bean with name 'docBorrowManager': Bean with name 'docBorrowManager' has been injected into other beans [lendingMgrAction] 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. - action - file:/D:/Tomcat%206.0/webapps/DataManager/WEB-INF/classes/com/jbpm/docborrow/action/struts-docborrow.xml:54:85
解析原因:
后来才发现原来我在两个action里都注入了docBorrowManager,在/WEB-INF/config/applicationContext-framework.xml发现
<bean id="docBorrowManager"
class="com.jbpm.docborrow.service.impl.DocBorrowManagerImpl" scope="prototype">
      <property name="docBorrowDAO" ref="docBorrowDAO"/>
  </bean>
解决方法:
把scope="prototype"去掉就ok了。即默认为“singleton”

原创粉丝点击