1、引入依赖
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-core</artifactId>
<version>3.3.5</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>3.3.5</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http-jetty</artifactId>
<version>3.3.5</version>
</dependency>
<!-- 添加 CXF -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxws</artifactId>
<version>3.3.5</version>
<exclusions>
<exclusion>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
</exclusion>
</exclusions>
</dependency>
2、创建bean及服务类
Book
public class Book {
private String name;
private String author;
private Date publishDate;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public Date getPublishDate() {
return publishDate;
}
public void setPublishDate(Date publishDate) {
this.publishDate = publishDate;
}
}
BookService
@WebService
public interface BookService {
public Goods getBookInfo(String bookName);
}
BookServiceImpl
@WebService
@Service
public class BookServiceImpl implements BookService {
@Override
public Goods getBookInfo(String goodsName) {
return null;
}
}
3、创建配置类
CxfConfig
@Configuration
public class CxfConfig {
//默认servlet路径/*
@Bean
public ServletRegistrationBean dispatcherWebServiceServlet() {
return new ServletRegistrationBean(new CXFServlet(), "/*");
}
@Autowired
Bus bus;
@Autowired
BookService bookService;
@Autowired
GoodsService goodsService;
@Bean
public Endpoint endpointIscUserWebService() {
EndpointImpl endpoint = new EndpointImpl(bus,goodsService);
endpoint.publish("/goodsService");
return endpoint;
}
@Bean
public Endpoint endpointIscBizOrgService() {
EndpointImpl endpoint = new EndpointImpl(bus,bookService);
endpoint.publish("/bookService");
return endpoint;
}
}
4、设置配置文件
server:
port: 8888
5、启动项目,访问服务