之前的一篇博客说了一个实例,就是用VS2005在IIS上发布WebService。今天我们来实现在Eclipse上用Java来调用昨天发布的WebService。
首先咋在浏览器中输入http://10.13.30.159/webservice/?wsdl找到这个WebService的wsdl文件。我们采用Asix2来调用这个Web服务。
下载Asix2的bin包(已经上传到我的网盘里,下载地址:http://axis.apache.org/axis2/java/core/download.cgi#a1_5_3),解压到E:/下面。在cmd中执行:
会在C://ddd下面生成两个文件:XXXCallBackHandler.java和XXXStub.java。实际上在Java工程中实例化这个XXXStub类就可以调用WebService了。
将Axis2中lib下的jar包引入依赖。编写调用的函数如下:
package com.wjy.invoke; import java.rmi.RemoteException; import org.apache.axis2.AxisFault; import com.wjy.axis2.WebServiceStub; public class Invoke { public static void main(String[] args){ try { WebServiceStub serviceStub=new WebServiceStub(); WebServiceStub.HelloWorld helloWorld=new WebServiceStub.HelloWorld(); try { System.out.println(serviceStub.HelloWorld(helloWorld).getHelloWorldResult()); } catch (RemoteException e) { // TODO Auto-generated catch block e.printStackTrace(); } } catch (AxisFault e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
执行结果: