Axis2开发WebService并打包成.war包发布
新手初来咋到,因为工作原因需要使用到WebService,网上找资料的时候看到很多Axis2开发的webservice都是打包成arr格式附带到Axis2框架上发布,这样不能打包成war发布。 整理了一些资料了解了一种可以把Axis2开发的WebService打包成war包发布。 ?? ?一、环境准备 ???????? ?使用?Axis?来开发?Web?services??需要准备??web??服务器,?Axis?API?。本文使用的?Web?container??是?Tomcat?6?.?0?,?Axis?API??采用版本?2?。 ?? ? 1.1?软件下载准备 ???????? ?Tomcat下载地址: ??????????????http://tomcat.apache.org/download-55.cgi#5.5.20 ???????? ?Axis?标准包: http://apache.etoak.com/ws/axis2/1_5_1/axis2-1.5.1-bin.zip ??????? ??Axis?War?包: ?????????????????http://apache.etoak.com/ws/axis2/1_5_1/axis2-1.5.1-war.zip ???? 1.2?步骤 ??????????????????A?.?将?axis2.war?包拷贝到?tomcat?安装目录下的?webapps?目录中。 ????????? B?.启动Tomcat(windows?下为TOMCA_HOME/bin中的startup.bat;Linux,unix环境为startup.sh文件),打开浏览器输入并访问:http://ip:port/axis2来查看。(如果没有进行?配置?文件的修改此地址应该为?http://localhost:8080/axis?2?),如果能看到下面的页面则说明已经安装完成。
? ???? 二、?例子 ??????????? 先从一个简单的例子开始。以便对使用?Axis?来开发?Web?services?的大致流程有个了解。 ???????2.1编写自己的应用服务端。 ?????????? A?.启动?MyEclipse?,新建立一个?WebApps?(?File->New->Project->Web?Project?)?,?给?Project?Name??为?Axis2Service?,其他保持不改变。 ???????????B.?我们需要一个简单的web?service?,建包cc.com.mm,包下新建类?TestWebService?。代码如下: ?????????? package cc.com.mm; public class TestWebService { public String test(String name){ return name +" "+ "test"; } } ??????????C.将?Axis2?集成?到我们自己的webapp中。首先我们需要将Axis2?Servlet写到我们的web.xml中?。如下: <?xml version="1.0" encoding="UTF-8"?> <web-app id="wmf" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <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> <url-pattern>/services/*</url-pattern> </servlet-mapping> </web-app> ?????????D.把tomcat?安装目录下的webapps/axis2?/?axis2-web?放到项目的WebRoot下,?把tomcat安装目录下的webapps/axis2/WEB-INF下的service和conf?和moduls?文件夹?拷至?项目?下的WEB-INF目录下?,并修改conf目录下的axis2.xml,找到?<module?ref="addressing"/>?并将其注释掉。?把lib下的jar包?也?拷?到项目的lib下?去。?结构如下:
? ????? E.?接下来,我们需要为?TestWebService?写一个部署描述。?在?services下新建Axis2Service(这个可以任取)?/META-INF路径,META-INF下新建services.xml,内容如下: <service name="ServiceTest"> <description> Test Service Example </description> <parameter "ServiceClass"> cc.com.mm.TestWebService </parameter> <operation "test"> <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </operation> </service> ??????F.把项目加载到tomcat,也可以打包成war发布到tomcat,?启动tomcat后访问http://localhost:8080/Axis2Service/services/ServiceTest?wsdl ?? ? ???? 能看到服务信息,则说明已经成功。 转自:http://www.tuicool.com/articles/BjUNrq (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |