다음은 완전한 대답입니다. 비트와 부품은 online으로 찾을 수 있지만, 따라 가기 쉽고/구현하기 쉬운 완벽한 답변이 없었습니다.
알아 내기가 쉽기 때문에 maven 파트는 건너 뛸 것입니다.
등록 CXF 서블릿
@WebServlet(urlPatterns="/*")
public class CXFStartServlet extends CXFServlet {
}
CXF 서비스로 @Path와 모든 스프링 빈을 등록
@Configuration
public class MyCxfConfig {
@Autowired
private ApplicationContext ctx;
@Bean(name="cxf")
public SpringBus springBus(){
return new SpringBus();
}
@Bean
public Server jaxRsServer() {
LinkedList<ResourceProvider> resourceProviders = new LinkedList<ResourceProvider>();
for (String beanName : ctx.getBeanDefinitionNames()) {
if (ctx.findAnnotationOnBean(beanName, Path.class) != null) {
SpringResourceFactory factory = new SpringResourceFactory(beanName);
factory.setApplicationContext(ctx);
resourceProviders.add(factory);
}
}
JAXRSServerFactoryBean factory = new JAXRSServerFactoryBean();
factory.setBus(ctx.getBean(SpringBus.class));
factory.setProviders(Arrays.asList(new JacksonJsonProvider()));
factory.setResourceProviders(resourceProviders);
return factory.create();
}
}
귀하의 봄 설정에서 "MyCxfconfig"을 가져올 것을 잊지 마십시오 . 그게 다야. :)