Я проверил еще несколько подобных вопросов, но решения не нашел.
Итак, у меня есть проект весенней загрузки с настроенными веб-службами:
@Configuration
public class WebServiceConfig {
@Autowired
private Bus bus;
@Bean
public Endpoint endpoint() {
EndpointImpl endpoint = new EndpointImpl(bus, new ServiceImpl());
endpoint.publish("/ws");
return endpoint;
}
}
ServiceImpl, например:
@javax.jws.WebService(serviceName = "ServiceImpl", portName = "ServiceImplPort", targetNamespace = "http://serivce.com/", endpointInterface = "pac.service...")
public class ServiceImpl...
сервис работает нормально.
Мой POM для этой реализации выглядит так:
...
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-ws</artifactId>
<version>1.3.5.RELEASE</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxws</artifactId>
<version>3.1.7</version>
</dependency>
...
MainClass:
@Configuration
@EnableAutoConfiguration
@EnableScheduling
@EnableWebMvc
@ComponentScan("com.package")
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
} }
Пока все работает нормально - WS доступен, но если я добавлю в POM:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-actuator</artifactId>
<version>1.3.5.RELEASE</version>
</dependency>
запуск приложения, я вижу в логах:
EndpointHandlerMapping: сопоставлено "{[/ info
EndpointHandlerMapping: Mapped "{[/ health и т. Д.
а также:
ServerImpl: установка адреса публикации сервера как / ws
поэтому он запускается без каких-либо ошибок, и похоже, что привод должен работать, но когда я попытался вызвать конечные точки привода, я получил ошибку 404.
когда я вызываю: localhost: 8081 / info
Я получаю: Служба не найдена.
Я пробовал использовать:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
но тогда WS был недоступен (как и конечные точки привода)
любое предложение?
@EnableWebMvc
? Это отключает автоконфигурацию Spring MVC в Boot, чтобы вы могли полностью контролировать ее конфигурацию. Однако я не вижу никаких признаков того, что вы настраиваете его самостоятельно. - person Andy Wilkinson   schedule 17.09.2016