简体   繁体   English

JpaRepository:NoSuchBeanDefinitionException

[英]JpaRepository: NoSuchBeanDefinitionException

I use spring-data-jpa.我使用 spring-data-jpa。 Without Spring Boot.没有 Spring Boot。

package ru.spb.repository;

public interface CrudUserRepository extends JpaRepository<User, Integer> {
}

repository.存储库。

 package ru.spb.repository;

@Repository
public class UserRepository {

  @Autowired
  private CrudUserRepository crudRepository;
}

xml-config-files: xml 配置文件:

spring-app.xml spring-app.xml

<context:component-scan base-package="ru.spb.service"/>
<context:component-scan base-package="ru.spb.repository"/

spring-db.xml:弹簧 db.xml:

<context:component-scan base-package="ru.spb.repository" />
<jpa:repositories base-package="ru.spb.repository"/>

in pom在 pom

<spring-data-jpa.version>2.2.0.RELEASE</spring-data-jpa.version>

   <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-jpa</artifactId>
        <version>${spring-data-jpa.version}</version>
    </dependency>

But I catch the:但我抓住了:

 NoSuchBeanDefinitionException: No qualifying bean of type 'ru.spb.repository.user.CrudUserRepository' available: expected at least 1 bean which qualifies as autowire candidate

The problem is solved.问题已经解决了。 I add "classpath:spring/spring-db.xml" in param-values of contextConfigLocation in my web.xml:我在 web.xml 的 contextConfigLocation 的参数值中添加“classpath:spring/spring-db.xml”:

 <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
        classpath:spring/spring-app.xml
        classpath:spring/spring-db.xml
    </param-value>
  </context-param>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM