WebService学习之旅使用Apache Axis2实现WebService客户端调用
Posted 江荣波
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WebService学习之旅使用Apache Axis2实现WebService客户端调用相关的知识,希望对你有一定的参考价值。
上节介绍了如何使用Axis2 发布一个WebService,Axis2除了为我们编写WebService应用带来了便利,也同样简化的客户端调用的过程,本节在上节的基础上使用Axis2自带的工具生成客户端调用辅助类,并实现客户端调用代码的编写。
1.將前面下载的axis2-1.7.1-bin.zip解压,新建一个环境变量AXIS2_HOME,值为解压后目录路径。接着在path变量中添加%AXIS2_HOME%/bin;。
2.Eclipse中新建一个Java Project,打开Windows控制台进入工程根目录,输入命令:
wsdl2java -uri http://localhost:8080/axis2/services/HelloWorld?wsdl
3.刷新工程,可以看到axis2的wsdl2java工具为我们生成两个类。
4.Java类中有错误,我们需要將axis2解压后lib目录下的所有Jar包添加到工程classpath下。
5.编写客户端调用代码,内容如下:
package com.csdn.ws.axis2.recipe01.client;
import java.rmi.RemoteException;
import org.apache.axis2.AxisFault;
import com.csdn.ws.axis2.recipe01.HelloWorldStub;
public class Client {
public static void main(String[] args) {
try {
HelloWorldStub stub = new HelloWorldStub();//创建HelloWorldStub对象
HelloWorldStub.SayHello sayHello = new HelloWorldStub.SayHello();//创建SayHello对象
sayHello.setArgs0("Jane");//设置参数
HelloWorldStub.SayHelloResponse resp = stub.sayHello(sayHello);
System.out.println(resp.get_return());
} catch (AxisFault e) {
e.printStackTrace();
} catch (RemoteException e) {
e.printStackTrace();
}
}
}
6.运行程序控制台输出WebService返回内容:
hello,Jane
7.完整项目结构如下图所示:
一个简单的客户端调用实例就演示完了,下节介绍Axis2发布WebService的几种方式。
以上是关于WebService学习之旅使用Apache Axis2实现WebService客户端调用的主要内容,如果未能解决你的问题,请参考以下文章