JAR SPRING @autowired - PullRequest
       1

JAR SPRING @autowired

0 голосов
/ 15 мая 2018

Я создаю архив Java, и я хотел бы интегрировать это в свое приложение.

в моем основном заявлении:

ApplicationContext.xml:

<context:component-scan base-package="com.test.chomage" />

ChomageController.java:

@Controller
@Path("/chomage")
public class ChomageController {

   @Autowired
   ChomageService chomageService;

   @Autowired
   OrganisationService organisationService;
}

В моем архиве Java:

appConfig.java

@Configuration
@ComponentScan("com.test.jarPatrimoine")
public class AppConfig {

}

OrganisationService.java

public interface OrganisationService {
  //Functions
}

OrganisationServiceImpl.java

@Service
@Transactional
public class OrganisationServiceImpl implements OrganisationService 
  //Functions
}

Когда я запускаю свой сервер Tomcat, у меня появляется следующая ошибка:

org.springframework.beans.factory.UnsatisfiedDependencyException: 
Error creating bean with name 'chomageController': 
Unsatisfied dependency expressed through field 'organisationService';
nested exception is 
org.springframework.beans.factory.NoSuchBeanDefinitionException: 
No qualifying bean of type 
'com.test.jarPatrimoine.service.OrganisationService' available: 
expected at least 1 bean which qualifies as autowire candidate. Dependency 
annotations: 
{@org.springframework.beans.factory.annotation.Autowired(required=true)}

Вы можете мне помочь?

Спасибо

Ответы [ 2 ]

0 голосов
/ 15 мая 2018

Spring ищет com.vnf.jarPatrimoine.service.OrganisationService, но сканирование настроено как @ComponentScan("com.test.jarPatrimoine").Возможно, вам придется изменить его.

0 голосов
/ 15 мая 2018

Существуют ли другие классы, реализующие OrganisationService ?Если это так, вам нужно добавить аннотацию @Qualifier для внедрения правильной реализации.

@Autowire
     @Qualifier("thequalifyingbean") 
     OrganisationService organisationService;

также используйте @Controller для вашего класса контроллера вместо @ Component

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...