NoSuchBeanDefinition из-за неудовлетворенной зависимости, выраженной через параметр конструктора 0 - PullRequest
0 голосов
/ 18 января 2020

Я использую класс библиотеки X, помеченный как @Provider (аннотация для JAX-RS).

Я хочу расширить возможности X, чтобы расширить класс:

@Provider
public class WrappedX extends ContainerRequestFilter,
ContainerResponseFilter {
     private final X objectX;
     public WrappedX (X objectX) { this.objectX = objectX; } }
     @Override
     <Some function1>
     @Override
     <Some function2>
}

В другой файл, который я создаю класс конфигурации WrappedX Spring:

@Configuration
public class WrappedXConfig {
  @Bean
  public WrappedX getWrappedXFilter(){
      X objectX = new XBuilder().build();
      return new WrappedX(objectX);
  }

}

, когда я запускаю это, я получаю ошибку:

Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: 
    Error creating bean with name 'getWrappedXFilter' defined in file 
    [<path>/WrappedX.class]: 

 Unsatisfied dependency expressed through constructor argument with index 0 of type  [org.company.package1.X]: : No qualifying bean of 
 type [org.company.package1.X] found for dependency: 
     expected at least 1 bean which qualifies 
     as autowire candidate for this dependency. 
  Dependency annotations: {};  nested exception is 
 org.springframework.beans.factory.NoSuchBeanDefinitionException: 
    No qualifying bean of type [org.company.package1.X] found 
    for dependency: expected at least 1 bean 
    which qualifies as autowire candidate for this dependency. 
  Dependency annotations: {}

Я вижу другой фрагмент кода, который делает именно то, что я сделал , Но они запускают свой код просто отлично. Может кто-нибудь объяснить, что здесь происходит?

...