【webservice】如何发布axis2的webservice服务端

来源:互联网 发布:ie右下角弹出淘宝广告 编辑:程序博客网 时间:2024/05/01 00:20

axis2版本:axis2-1.5.4

准备工作:下载axis2-1.5.4-war.zip(生成服务端)、axis2-1.5.4-bin.zip(axis2的jar包),jdk5(及以上版本)、tomcat(端口我设成8086了)

手把手超级详细介绍axis2的webservice服务端的生成与发布。

1. 解压axis2-1.5.4-war.zip得axis2.war,把axis2.war放到tomcat的webapps目录, 启动tomcat(注意tomcat控制台的信息)就能加载axis2.war并生成新的axis2目录,打开浏览器访问http://localhost:8086/axis2/ 则能显示axis2初始化的页面,点击“Services”超链接到http://localhost:8086/axis2/services/listServices,该页面将显示所有发布到该axis2目录的webservice。

2、上一步骤提到的axis2目录,玩家们一般会改成具有业务特色的名字,这里示例就改成pp吧(先关闭tomcat),重启tomcat,访问的url就要改为http://localhost:8086/pp/。

3、点击“ Services”超链接到http://localhost:8086/pp/services/listServices,初始发布默认有1个叫“Version”的webservice。完事后记得删掉axis2.war(不然会生成新的axis2目录)。

4、接下来添加自己写的webservice。开发工具用myeclipse或者eclipse,新建java project, 这里示例工程tttt,在tttt里面新建个文件夹,取名lib,放上axis2的jar包(由axis2-1.5.4-bin.zip解压可得,全放上就可以了),再把jar包导入到tttt工程。工程内新建package:com.tttt.server,新建类:com.tttt.server.Hello,编程如图示:


5. 吧工程导出成aar文件,做法:工程tttt右击选择export--- JAR file---把右上角的钩钩去掉---导出文件名随便改,如下图。


6. 新建services.xml。关于这个webservice的配置文档,也是有一定技巧的,总之每个aar对应1个services.xml,具体的标签说明、配置介绍请自行谷哥,万能的配置内容如下:

<!-- webservice配置文件   --><service name="tttt_Service" ><pre code_snippet_id="333816" snippet_file_name="blog_20140508_1_3148583" name="code" class="html"><span style="font-family: Arial, Helvetica, sans-serif;"><!-- 上面是webservice的命名,可自行修改   --></span>
<description>Please Type your service description here</description><messageReceivers><messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only" class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" /><messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out" class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/></messageReceivers><parameter name="ServiceClass">com.tttt.server.Hello</parameter></service>
7. (用解压软件打开这个jar包)把这个services.xml放到tttt.jar-META-INF目录下,接着把后缀名jar改成aar,放到D:\Program Files\apache-tomcat-6.0.36\webapps\pp\WEB-INF\services, 重启tomcat。

8. 打开http://localhost:8086/pp/services/listServices可以看到tttt_Service,点击就是它的wsdl(一个符合soap协议的xml,大概这样理解吧),发布成功了。别人就能更加你提供的wsdl(url或者wsdl文档)生成客户端代码鸟。


9. 转载请说明出自Whilejolly:http://blog.csdn.net/seedingly/article/details/25289257

想要弄更加复杂的功能,例如要返回json数据就要向工程另外导入json的jar包,要拼xml数据就要dom4j之类的jar包,这些axis2以外的jar包可放在D:\Program Files\apache-tomcat-6.0.36\webapps\pp\WEB-INF\lib,也就是pp的lib目录。webservice可以返回自定义对象的 ,这样的话客户端编程会稍稍麻烦些,因此,把返回信息弄成json或者xml会规范一点。



1 0