使用AXIS2作为Client访问WebService

本文介绍了如何使用AXIS2作为客户端访问WebService,包括三种方式:不通过代理的HTTP访问,通过SSL的HTTPS访问,以及通过代理服务器访问。在HTTPS访问中详细说明了如何设置协议工厂和协议对象,而在代理访问中提到了可能遇到的chunked属性问题及其解决办法。
摘要由CSDN通过智能技术生成

使用AXIS2,可以方便的构建WebService的服务器端,也可以很方便的作为Cilent,来访问别的WebService。

下面根据工作中的经历,整理了一下,作为Cilent访问WebService的要点。

根据Axis2的官方文档,Client的DataBinding方式有3种,最简单的好像是ADB,那么我就选用的ADB。


1.普通方式(http 不通过proxy,对方也没有利用SSL)

// Generate Client
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();

// Generate Endpoint
String webserviceurl = "http://www.abc.net/webservice/servicepage"; // for example.
EndpointReference targetEPR = new EndpointReference(webserviceurl);

options.setTo(targetEPR);

// Auto release transport.
options.setCallTransportCleanup(true);

// Generate Action
String ns = "http://www.abc.net/webservice";
String action = "getSomething"; 
QName opAction = new QName(ns, action);

// Generate Reqest parameters
ReqBean reqObj = new ReqBean();
reqObj.setParam1("param1");
reqObj.setParam2("param2");

Object[] opArgs = new Object[] { reqObj };
Class[] returnTypes = new Class[] { ArrayList.class };

Object[] response = null;

try {
    response = serviceClient.invokeBlocking(opAction, opArgs, returnTypes);
} catch (AxisFault af) {
    // Process exception.
}

ArrayList res = (ArrayList) response[0];

// Analyze the 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值