JAVA 用axis2调用webservice例子。

来源:互联网 发布:js 防水 编辑:程序博客网 时间:2024/05/15 05:36

import javax.xml.namespace.QName;


import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;

public class TestReqSerAction {

public static void main(String[] args) throws AxisFault {

//  使用RPC方式调用WebService

RPCServiceClient serviceClient = new RPCServiceClient();

Options options = serviceClient.getOptions();

 //  指定调用WebService的URL

EndpointReference targetEPR = new EndpointReference("http://localhost:8080/zwf/services/ryclxx?wsdl");

//   超时时间

options.setTimeOutInMilliSeconds(10 * 60 * 1000);
options.setTo(targetEPR);

 //  指定要调用的WSDL文件的命名空间及调用方法,第一个是命名空间,第二个是要调用的方法名称

QName opAddEntry = new QName("RyclxxService", "ryclxx");

// 设置传入参数,根据ryclxx方法来设置参数的顺序和值

Object[] opAddEntryArgs = new Object[] {
senderId, //请求方
xml, //xml参数
reqUsername, //请求人
reqUserSfz, //身份证
reqUserGh, //工号
reqIp //请求ip
};

 //  指定ryclxx方法返回值的数据类型的String对象

Class[] classes = new Class[] { String.class };

// 调用方法

String resultData = (String)serviceClient.invokeBlocking(opAddEntry, opAddEntryArgs, classes)[0];

System.out.println(resultData );

}

}

 

0 0