Axis2提供了1个wsdl2java.bat命令可以根据WSDL文件自动产生调用WebService的代码。wsdl2java.bat命令可以在/bin目录中找到。
在使用wsdl2java.bat命令之前需要设置AXIS2_HOME环境变量,该变量值是。在Windows控制台输出以下的命令行来生成调用WebService的代码:
%AXIS2_HOME%inwsdl2java -uri [wsdl] -p client -s -o stub
例如:%AXIS2_HOME%inwsdl2java- urihttp://localhost:8080/Hikvision/services/myWebservice?wsdl-p
client -s -o stub
在履行完上面的命令后,就会发现在当前目录(即/bin目录下)下多了个stub目录,在stub/src/client目录可以找到1个xxxStub.java文件,该文件复杂调用WebService,可以在程序中直接使用这个类。
调用方法:
1.在新建的Java工程中导入刚才生成的stub目录下的client包拷贝到工程的src目录下,并在lib目录下导入axis里需要的jar包(不然会报错)。
2.程序中调用方法
package com.hcj.webservice;
import client.MyWebserviceStub;
import client.MyWebserviceStub.GetAllUserResponse;
public class Test {
public static void main(String[] args) throws Exception {
//创建生成的stub类
MyWebserviceStub stub = new MyWebserviceStub();
//创建对应的方法类(这里我的webservice里有个getAllUser的方法,具体的看你自己webservice里定义了何种方法)
GetAllUserResponse allUser = stub.getAllUser();
//获得方法类的结果集
String get_return = allUser.get_return();
//打印输出结果
System.out.println(get_return);
}
}