SSH整合出现expected at least 1 bean which qualifies as autowire candidate for this dependency. 错误

今天在整合spring,springMVC,Hibernate启动tomcat7.0的时候出现异常:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘accountController’: Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.sram.service.AccountService com.sram.controller.AccountController.accountService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.sram.service.AccountService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

大概意思就是在映射的时候:我这个com.sram.service.AccountService这个接口在依赖注入的时候找不到它的bean,我在网上找了一下问题大概就是以下几种:
1.spring在扫描时没有找到所需要的类
2.没有在对应的类上加注解

但是这几个都没有解决我的问题,最后我发现我的问题是没有配置监听器,导致web.xml没有自动加载spring.xml这个配置文件
解决方式:
在web.xml文件下配置监听器,在tomcat7.0启动的时候自动加载spring配置文件。

 <!--配置监听器 --> <!--以便在服务器启动的时候,加载spring配置文件-->
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

猜你喜欢

转载自blog.csdn.net/chen_CJH/article/details/83832323
今日推荐