【发布时间】:2011-11-27 22:20:41
【问题描述】:
当我尝试自动装配我的 Bean 构造函数时出现以下错误:
原因:org.springframework.beans.factory.NoSuchBeanDefinitionException:没有为依赖项找到类型为 [dimensionmanagement.service.DimensionService] 的匹配 bean:预计至少有 1 个 bean 有资格作为此依赖项的自动装配候选者。依赖注释:{} 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:920) 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:789) 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:703) 在 org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:795) 在 org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:723) ... 89 更多
我已经这样定义了 dimensionmanagement.service.DimensionService:
@Service @Transactional public class DimensionService implements Serializable {
在我的 applicationContext.xml 中:
<context:annotation-config/>
<bean class="org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor"/>
<context:component-scan base-package="dimensionmanagement" />
如果还有什么问题请追问! 谢谢乔纳斯
【问题讨论】:
-
您是否已将您尝试自动装配的类注释为组件(@Component)或类似的注释??
-
是的,注解为
@Component("managementBean") @Scope("session") public class ManagementBean implements Serializable { -
你是如何加载你的上下文的?这是一个网络应用吗?
-
将@Transactional @Service bean 标记为
Serializable是没有意义的。
标签: hibernate spring constructor javabeans autowired