普通web项目集成axis2
- apache下载axis2 war包放到tomcat webapp下,启动tomcat war包自动解压
- 在自己构建的web应用下将tomcat中war包自动解压后的lib包下的jar包粘贴进来
- 在自己构建的web应用下建立如下的目录结构,参考地址https://blog.youkuaiyun.com/s740556472/article/details/79680454
web.xml文件,将其中加上,其实就是对请求进行servlet拦截:
<servlet>
<servlet-name>AxisServlet</servlet-name>
<servlet-class>org.apache.axis2.transport.http.AxisServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>AxisServlet</servlet-name>
<url-pattern>/services/*</url-pattern>
</servlet-mapping>
在java下创建如下类,此类相当于服务端提供的服务类,在名为TestService 的类中,有一个test(String test)方法:
public class TestService {
public String test(String param) {
System.out.println("服务端被请求了一次....");
return "axis2服务端(TestService)返回:"+param;
}
}
打开我们创建的services.xml,对其编写:
<?xml version="1.0" encoding="UTF-8"?>
<serviceGroup>
<!-- 指定服务名,随便定义 -->
<service name="ZipKinService">
<!-- 服务的作用说明,可写可不写 -->
<description>测试axis2webservices</description>
<!-- 指定要发布的类路径 自定义name-->
<parameter name="ServiceClass">
com.axis2.TestService
</parameter>
<!-- 类里面的方法名 ,若有多个方法,可以新增operation标签 -->
<operation name="test">
<messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
</operation>
</service>
</serviceGroup>
运行axis2-webservice服务端
启动tomcat,我改了端口,所以启动项目的端口是18080,此时访问如下地址:
http://localhost:18080/services/ZipKinService?wsdl
地址的构成路径是:ip + 端口 + 项目名字 + web.xml中你配置的serlvet映射的名称 + services.xml(自己创建的)中的service name属性 + ?wsdl
能看到wsdl文件信息说明成功了
springboot2集成CXF
https://www.cnblogs.com/fuxin41/p/6289162.html
问题和笔记
1:现在的新项目还用webservice吗?什么场景下用webservice合适?
简单讲一下 webservice使用的场景?
https://blog.youkuaiyun.com/qq_32575047/article/details/80528788
https://blog.youkuaiyun.com/qq_29726869/article/details/79001827
2:笔记
- 在某些业务复杂,稳定性和正确性要求高的领域(如ERP、电商、支付),WebService还有是用武之地的。
- JSON的缺点是数据类型支持较少,且不精确。比方说:
在json里,你无法知道这个价格是int, float还是double。price:12580
自己搭建的git项目地址:https://github.com/YutaoLiNice/
参考博客:
springboot和cxf版本问题
https://blog.youkuaiyun.com/Jerry_liu20080504/article/details/84287009
axis2发布webservice服务端,【axis2、cxf】实现客户端
https://blog.youkuaiyun.com/s740556472/article/details/79680454
springboot2集成CXF
https://www.cnblogs.com/fuxin41/p/6289162.html
使用axis2创建webservice(pojo方式 和service.xml方式)
https://clq9761.iteye.com/blog/976029
IntelliJ IDEA 开发 WebService
https://blog.youkuaiyun.com/z69183787/article/details/53506027