java中webservice生成/调用方式小结

一、通过axis2方式发布
1、用POJO形式发布(无需配置)
(1)将axis2.war防置tomcat的webapps中,启动服务器
(2)将没有package包(pojo类不能放置在任何包中)的class文件放置到放置在C:\apache-tomcat-8.5.20\webapps\axis2\WEB-INF\pojo
(3)重新启动tomcat
(4)打开 http://localhost:8080/axis2/services/Hello?wsdl http://localhost:8080/axis2/services/listServices 即可打开查看。
2、通过配置services.xml然后打包成aar文件进行发布
(1)创建需要提供服务的类class文件
(2)编写services.xml文件
(3)根据class文件的package路径配置如下
D:\ws\ com\sinosoft\webservice\HelloServiceNew.class
D:\ws\META-INF\services.xml
(4)然后在ws目录下进行打包操作, jar cvf ws.aar .
(5)将生成好的aar文件放在 \webapps\axis2\WEB-INF\services目录中,完成。
其中配置文件格式如图
java中webservice生成/调用方式小结_第1张图片
没有返回值时:
有返回值时:
class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
3、通过导入axis2相关包,在自定义web工程中发布webservice
(1)准备好相关服务类
(2)配置web.xml文件,加入axis2的servlet配置:
AxisServlet
org.apache.axis2.transport.http.AxisServlet
1
AxisServlet
/services/*
(3)将原始axis2的工程下的 modules、service、lib和conf文件夹拷至自定义工程下的WEB-INF目录下
(4)然后在services下新建{servicename}(自定义也可以)/META-INF路径,META-INF下新建services.xml:
java中webservice生成/调用方式小结_第2张图片
(5)启动服务,访问http://127.0.0.1:8080/webServe/services/{services.xml中parameter的name}?wsdl即可
4、通过javax.jws.*相关包的注解方式发布webservice服务
(1)在没有axis2jar包的普通java工程或web工程下( 可以使用监听器或者Servlet来发布WebService),新建普通类
(2)javax.jws.WebService.@WebService注解类,提供服务的方法不能为static、final
(3)如图方法,发布后访问,即可 http://localhost:9001/hello?wsdl

(4)暂时不提供入参,待 完善

二、通过Apache CSXF方式发布
1、main方式
2、基于Spring发布到容器
3、不基于Spring发布到容器


三、客户端的编写与调用
1、Java通过RPC远程调用方式访问WebService的服务端

2、应用document方式调用

3、用wsdl2java简化客户端的编写
(1)在axis2官网下载 axis2-x.x.x-bin.zip,找到bin里面就可以找到wsdl2java.bat
(2)通过cmd到bin目录下运行命令
wsdl2java -uri http://localhost:8080/axis2/services/SimpleService?wsdl -p com.peide.webservice.axis2 -s -o stub
-uri 后面运行的是 需要访问的wsdl, -p 是文件生成的包名 -o stub生成的文件目录,是bin目录下面的
(3)将bin下面的文件复制到-p的包下
(4)通过如图方式进行调用
java中webservice生成/调用方式小结_第3张图片
4、用wsimport生成客户端代码
(1)确认C:\Program Files\Java\jdk1.8.0_144\bin下的wsimport.exe
(2)执行 wsimport -keep  http://localhost:9001/hello?wsdl ,完成无错,刷新str目录
(3)关注Hello.java和HelloService.java
(4)如图,直接调用(调用很简单)
java中webservice生成/调用方式小结_第4张图片


PS.部分内容不完善,待补充。

你可能感兴趣的:(java中webservice生成/调用方式小结)