ps:最近项目需要跟其他系统做同步,需要使用webservice来提供接口给其他系统调用;临时抱佛脚赶紧去网上找了下资料,发现用Endpoint的方式发布接口好容易哦;赶紧写了个例子做验证,发布成功。网上实例很多就不啰嗦了,这里说下通过Endpoint.publish的方式放到项目中去之后各种报错,网上找的解决办法都不灵;后来仔细研究项目代码发现,项目底层通过cxf和spring做了整合了,多了一堆cxf开头的jar包,所以报错;所以只要你项目中没有cxf开头的jar包,还是可以使用Endpoint这种非常简单的方式发布接口的;但Endpoint有一个弊端:就是接口复杂之后,暴露的wsdl接口xml样式会错乱,网上看到的,没实践过;
言归正传,下面说下spring和cxf整合的配置
1、定义webservice接口
2、定义接口实现类
3、让spring管理ServerFactoryBean(涉及项目资料,只贴出部分核心代码)
4、cxf集成到web容器中,在web.xml中添加如下代码
5、启动项目的同时发布webservice接口
6、在浏览器中输入http://ip:端口/项目名/ws/接口名?wsdl
ps:接口名就是<jaxws:server>标签中的address参数的值;
大家也可以参考这个资料,说的比我好:https://www.cnblogs.com/zhanxiaoyun/p/6144651.html