2016-02-15 4 views
0

Я интегрирую Apache CXF с приложением Spring Boot, но я не могу автоматически загружать мои контроллеры. Я использую конфигурацию на основе Java (без XML).Apache CXF с Spring Boot - проблемы с маршрутами

Вот что я пробовал:

  • Explicitily добавить пакет resoruces в @ComponentScan

    => получил ConflictingBeanDefinitionException на каждом контроллере

  • Ресурсы пакет не @ComponentScan путей

    => контроллеры полностью игнорируются (нет записей из BeanNameUrlHandlerMapping журналов отладки)

я объявляю каждый контроллер таким образом:

@Component 
@RequestMapping("/me") 
public class MeResource { 

    @RequestMapping(method = RequestMethod.GET, produces = org.springframework.http.MediaType.APPLICATION_JSON_VALUE) 
    public Object getLoggedUser() { 
     Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal(); 
     return principal; 
    } 
} 

Что я отсутствующий получить контроллеры подобрали автоматически?

+0

Весенняя ботинок * упрямна * с самого начала, поэтому она может иметь какое-то отношение к другим зависимостям, которые вы включили в свой путь к классам (прямой или транзитивный), например, Джерси. Если это проект maven, может быть полезно разделить pom. В любом случае, установка уровня корневого журнала для отладки должна помочь в определении того, что делает Весна за занавеской. Любая конкретная причина, по которой вы не собираетесь использовать [Spring уже предлагает] (https://spring.io/guides/gs/rest-service/)? – Morfic

ответ

0

Как оказалось, мне нужно было запустить mvn clean - и добавить пакеты контроллера в @ComponentScan. Исключения из списка дублирования исчезли.

Смежные вопросы