我将spring配置为使用
自动检测某些DAOS<context:component-scan base-package="com.mycomp.app" />
<tx:annotation-driven />.
@Repository("transactionDao")
public class TransactionDao {
...
}
现在我在上下文中手动配置另一个引用此bean的bean。
<property name="schedulerContextAsMap">
<map>
<entry key="transactionDao" value-ref="transactionDao" />
</map>
</property>
现在春天抱怨:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'transactionDao' is defined
是否可以在上下文中引用自动检测到的bean?
答案 0 :(得分:0)
Is it possible to reference auto detected bean inside context?
是的,这是非常可能的。
为了查看未找到transactionDao bean的原因,您可以验证以下内容:
TransactionDao应该在classpath中并且位于com.mycomp.app的某个子包中
如果已经存在Step-1,则运行具有Logger级别的应用程序,将 org.springframework 设置为DEBUG,您可以在spring的启动日志中看到所有bean都已初始化。