axis2调用webservice
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 |
public static long TIMEOUTINMILLISECONDS= 100000 ; /** * 调用webservice * @param url webserviceURL * @param methodName 调用方法名 * @param namespace 命名空间 * @param params 参数 * @param returnTypes 返回参数类型 * @return * @throws AxisFault */ public
static <T> Object[] invokeMethod(String url,String methodName,String namespace,Object[] params,Class<T>[] returnTypes) throws
AxisFault{ RPCServiceClient client= new
RPCServiceClient(); Options options=client.getOptions(); EndpointReference epr= new
EndpointReference(url); options.setTo(epr); options.setTimeOutInMilliSeconds(TIMEOUTINMILLISECONDS); QName qName= new
QName(namespace, methodName); Object[] results=client.invokeBlocking(qName, params, returnTypes); return
results; } |
调用方法
1、传递单个参数
1 |
Object[] objs = invokeMethod( "http://localhost:8080/axis2/services/MobileWs" , "getArrayTest" , "http://ws.apache.org/axis2" , new
Object[] { "zhangsan" }, new
Class[]{String. class }); |
2、传递数组
1 |
Object[] objs = invokeMethod( "http://localhost:8080/axis2/services/MobileWs" , "getArrayTest" , "http://ws.apache.org/axis2" , new
Object[] { new
String[]{ "zhangsan" , "lisi" }}, new
Class[]{String. class }); |
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。