/**
* Axis2 调用webservice
* Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物。
* Axis2不仅支持SOAP1.1和SOAP1.2,还集成了非常流行的REST WebService,同时还支持Spring、JSON等技术
* @param url webservice 地址
* @param method 调用方法名
* @param selectNode 指定节点名
* @param namespace webservice命名空间
* @param param 参数
* @param page 分页参数
* @return
* @throws AxisFault
*/
private JSONObject axis2Webservice(String url,String method,String selectNode,String namespace,Map<String,String> param,Page<?> page) throws AxisFault {
//定义一个json对象,接收解析后的数据
JSONObject json = new JSONObject();
//webservice 命名空间
String webservice_namespace = "http://WebXml.com.cn/";
if(StringUtils.isNotBlank(url) && StringUtils.isNotBlank(method)){
ServiceClient sender = new ServiceClient();
//
Options options = sender.getOptions();
EndpointReference targetEPR = new EndpointReference(url);
options.setTo(targetEPR);
options.setTimeOutInMilliSeconds(10000);
//如果不设置Action,会提示无法找到http action等错误
options.setAction(webservice_namespace+method);
//如果为true,调用.net发布的Webservice会出现不兼容异常
options.setProperty(HTTPConstants.CHUNKED, "false");
sender.setOptions(options);
//
OMFactory fac = OMAbstractFactory.getOMFactory();
OMNamespace omNs = fac.createOMNamespace(webservice_namespace, "tns");
OMElement data = fac.createOMElement(method, omNs);
//封装WebService参数条件
if(param.entrySet() != null && param.entrySet().size() > 0 ){
for(Map.Entry<String, String> entry: param.entrySet()){
OMElement inner = fac.createOMElement(entry.getKey(), omNs);
inner.setText(entry.getValue());
data.addChild(inner);
}
}
// 调用服务
OMElement result = sender.sendReceive(data);
//取到指定节点内容,并封装成集合返回
json = this.readStringXml(result.toString(), selectNode, namespace, page);
}
return json;
}
分享到:
相关推荐
<groupId>org.apache.axis2 <artifactId>axis2 <version>1.6.2 <groupId>org.apache.axis2 <artifactId>axis2-adb <version>1.6.2 <groupId>org.apache.axis2 ...
本案例实现使用Axis2生成.arr包发布WebService服务,并使用Axis2生成客户端代码方式调用WebService
Axis2 调用webservice Axis2是一套崭新的WebService引擎,该版本是对Axis1.x重新设计的产物。 Axis2不仅支持SOAP1.1和SOAP1.2,还集成了非常流行的REST WebService,同时还支持Spring、JSON等技术
里面包含axis2-adb-codegen-1.5.4.jar、axis2-java2wsdl-1.5.4.jar、axis2-transport-local-1.5.4.jar、mail-1.4.jar、woden-impl-dom-1.0M8.jar、XmlSchema-1.4.3.jar等十几个jar包
使用Java+Axis2调用Web Services 网络接口,代码中列举4个例子可以查看,有详细注释提供参考。
Java Axis 直接调用webservice 接口工具类, 无需根据wsdl编译客户端,需要axis相关包,测试使用axis 1.4, 附demo引入axis包后直接可以测试;
Android 利用axis2 调用webservice 包含j2ee服务端代码和Android客户端代码 代码实现包含 List,map ,对象传递
包括axis2程序包官方下载地址(有点大,没法上传)安装及配置设置,并又客户端代码示例(本人项目中的代码截取)
jar包版本axis2-1.7.6 代码可以直接运行。 jar包已经精简到最小了。不用引用那么多没用的jar包. 亲测可用。
java axis客户端调用webservice,可应用于ofbiz框架。 解决网络上共享代码两次调用后会出现timeout的BUG
axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例axis2例子 webservice axis2 示例
axis2客户端调用webService接口需要用的jar包,在一次调接口中遇到的问题,亲测可用(整理成了比较精简的jar包)
Axis动态调用webService,所需JAR包,java代码都有,按照文档说明配就可以了
axis2作为服务端或客户端,发布webservice或者调用webservice所需的最少jar包。
Axis2调用SAP Webservice源码 使用Axis2 org.apache.axis2.eclipse.codegen.plugin_1.6.2.jar插件生成本地Java Proxy同事生成同步和异步调用测试用例 更重要的是配备详细文档,实乃Java与SAP集成是宝典!
axis调用第三方webservice接口所需的jar包,包括axis-1.4.jar,axis-jaxrpc-1.3.jar,axis-jaxrpc-1.4.jar,commons-discovery-0.5.jar,commons-logging-1.2.jar,cxf-rt-databinding-jaxb-3.3.1.jar,javax.mail-...
java axis 调用C# webService所需的jar包
本方法是用axis1.4技术,实现java客户端调用webservice。已经可实现过可行的,如果不行可加我QQ号302633进行详细解析。
NULL 博文链接:https://shenxueliang.iteye.com/blog/1722169
压缩包中包含详细代码以及所用到的jar,是完整可运行的project。当然,需要正确的路径支持才可以运行,本人没有把我所用到的路径贴出,改为本机地址。