利用AXIS简单搭建WebService

1. 下载AXIS相关压缩文件http://axis.apache.org/axis2/java/core/共4个压缩包,分别为axis2-1.5.4-bin.zip,axis2-1.5.4-docs.zip,axis2-1.5.4-src.zip,axis2-1.5.4-war.zip我们当前只用到war文件
2. 把war文件解压放至Tomcat的WebAPPS目录下
3. 编辑一个类,此类有相关的方法假设该类的全路径名为service.MyService
package service;

public class MyService {
	public String getGreeting(String name) {
		return "您好 " + name;
	}

	public void update(String data) {
		System.out.println("<" + data + ">已经更新");
	}
}

   编辑一个servers.xml文件
   该文件的内容如下:
<serviceGroup>
 <service name="myService">  
     <description>  
         Web Service例子  
     </description>  
     <parameter name="ServiceClass">  
         service.MyService    
     </parameter>  
     <messageReceivers>  
         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"  
             class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />  
         <messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"  
             class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver" />  
     </messageReceivers>  
 </service> 
</serviceGroup>

4.将该xml文件放入META-INF文件夹内,在cmd命令窗口下,将该class文件与该xml文件打包
假设这2个文件都在c盘a文件夹下,那么进入a文件夹,输入
jar cvf ws.arr META-INF service

5.此过程中Tomca一直在启动状态,然后再浏览器中输入
http://localhost:8080/axis2/services/myService/getGreeting?name=a
6.浏览器显示:
<ns:getGreetingResponse>
<ns:return>您好 a</ns:return>
</ns:getGreetingResponse>
证明WebService服务端已经搭建成功

方法2:C:\Tomcat6.0\webapps\axis2\WEB-INF下建立pojo文件将编译好的class放入,访问serverlist


下面介绍一下Axis Client对WebService的访问方式:
第一种方式:使用Axis提供的RPC方式,动态调用WebService内的方法
第二种方式:使用Axis内提供的wsdl2java.bat文件,设置Axis环境变量,在CMD中使用wsdl2java、命令,例如:wsdl2java -uri http://localhost:8080/axis2/services/SimpleService?wsdl -p client -s -o stub
   其中-url参数指定了wsdl文件的路径,可以是本地路径,也可以是网络路径。-p参数指定了生成的Java类的包名,-o参数指定了生成的一系列文件保存的根目录。在执行完上面的命令后,读者就会发现在当前目录下多了个stub目录,在."stub"src"client目录可以找到一个SimpleServiceStub.java文件,该文件复杂调用WebService,读者可以在程序中直接使用这个类

猜你喜欢

转载自myeyeofjava.iteye.com/blog/1023775
今日推荐