axis2 调用.net基于https的WebService接口
一、创建证书
1,在IE中访问WSDL的URL,弹出“安全警报”窗口,查看证书->详细信息标签页->复制到文件->下一步->下一步->指定文件名,将证书下载保存为.cer文件,例如:test_axis.cer
2,用下载到的证书文件生成信任库文件:
>keytool -import -file test_axis.cer -storepass changeit -keystore client.truststore -alias serverkey -noprompt
3,在调用WebService代码前指定信任库文件的路径:
System.setProperty("javax.net.ssl.trustStore", "/tmp/client.truststore");
System.setProperty("javax.net.ssl.trustStorePassword", "changeit");
然后在java调用代码中加入
二、调用执行
package kind.util;import java.util.Iterator;import org.apache.axiom.om.OMAbstractFactory; import org.apache.axiom.om.OMElement; import org.apache.axiom.om.OMFactory; import org.apache.axiom.om.OMNamespace; import org.apache.axiom.soap.SOAP12Constants; import org.apache.axis2.Constants; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.client.Options; import org.apache.axis2.client.ServiceClient;public class WebServiceUtil {private static EndpointReference targetEPR = new EndpointReference("https://XXXXXX/IXXX.asmx?wsdl");// 接口WebService地址public static void main(String[] args) {try {System.setProperty("javax.net.ssl.trustStore", "D://client.truststore"); System.setProperty("javax.net.ssl.trustStorePassword", "changeit"); OMFactory fac = OMAbstractFactory.getOMFactory();OMNamespace omNs = fac.createOMNamespace("http://tempuri.org/", "tns");// 命名空间// 请求参数设置Options options = new Options();options.setTo(targetEPR);// 设定webservice地址options.setTransportInProtocol(Constants.TRANSPORT_HTTP);// 设定传输协议options.setSoapVersionURI(SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);// 设定SOAP版本soap1.2// 客户端绑定参数设置ServiceClient sender = new ServiceClient();sender.setOptions(options);// 设定访问的接口方法 OMElement method = fac.createOMElement("Authorization", omNs);// 要调用的接口方法名称 OMElement value1 = fac.createOMElement("username", omNs);// 方法的第一个参数名称value1.addChild(fac.createOMText(value1, "username"));// 设定参数的值method.addChild(value1);// 方法设置参数 OMElement value2 = fac.createOMElement("password", omNs);// 方法的第一个参数名称value2.addChild(fac.createOMText(value2, "password"));// 设定参数的值method.addChild(value2);// 方法设置参数 OMElement result = sender.sendReceive(method);// 调用接口方法Iterator iterator = result.getChildrenWithLocalName("AuthorizationResult");System.out.println("guid="+((OMElement)iterator.next()).getText());}catch (Exception e) {e.printStackTrace();}} }
转载于:https://www.cnblogs.com/101key/p/3711544.html
axis2 调用.net基于https的WebService接口相关推荐
- java webservice 证书_java调用基于https的webservice(不生成密钥,基于spring配置,接收所有证书)...
我的blog:个人博客 最近工作需要调用外部的webservice,之前一直搞的是基于http的ws,没啥好说的 网上很多教程.这次对方提供的接口是基于https的接口,在网上查找都是需要生成密钥,安 ...
- 基于php汇率接口调用实例,基于C#的汇率接口调用代码实例
基于C#的汇率接口调用代码实例 代码描述:基于C#的汇率接口调用代码实例 代码平台:聚合数据 using System; using System.Collections.Generic; using ...
- 业务逻辑:完成客户下单后前台系统的数据处理并调用后台系统服务处理业务 webservice接口调用 有用...
思路: 页面提交表单后,在Action类中将页面提交的参数进行组装,随后通过使用Webservice技术来远程调用后台系统的业务接口服务来进行订单的保存操作 操作步骤: 在前台系统的Action类中通 ...
- Postman调用阿里云HTTPS动态注册接口(一型一密)
按照阿里云文档: 请求方式:post 地址格式: https://iot-auth.cn-shanghai.aliyuncs.com/auth/register/device 如下图写入参数: sig ...
- Java使用XFire调用WebService接口
看了一些Java调用WebService接口的例子,很多都是Ctrl+C,Ctrl+V的,其中有很多拿来使用后发现有错误,令人郁闷,特此写了一篇经过测试的,只是一个小例子. 服务端(为客户端提供Web ...
- JAVA中使用XFire调用WebService接口
http://blog.csdn.net/wangjian223344/article/details/11899187 首先以helloworld为例.网上看了好多xifre的例子几乎没好用的烦燥 ...
- java wsdl xfire_Java使用XFire调用WebService接口
服务端(为客户端提供Webservice接口): 使用工具:myeclipse-8.5-win32,apache-tomcat6.0 开发步骤: 1.创建工程 File->New->Web ...
- axis2 java.net.url_axis2调用.net写的webservice接口实现,指定参数名
参考文章:https://blog.csdn.net/wangyu2016/article/details/76022928 使用axis2调用调用.net写的webservice接口时出现参数无法传 ...
- java使用axis2调用webservice接口实例
说明:我目前的项目环境是struts2+spring+mybatis+oracle,以下代码是java使用axis2调用webservice接口实例. import javax.xml.namespa ...
- nodejs调用webservice接口(https)
之前对接的webservice接口都是发布在http上的,今天突然拿到一个接口地址是https的,意味着需要证书验证,利用https模块去请求接口有一个入参可以直接忽略证书,但是nodejs中调用we ...
最新文章
- Ubuntu安装TensorFlow-gpu及cuda9.0(不给自己找麻烦)
- matlab求两向量夹角_高中数学《平面向量的数量积》说课稿
- note同步不及时 one_朱海舟回应锤子便签同步不及时:工程师已经解决
- mqtt判断设备是否在线_如何在 Python 中使用 MQTT
- Overview of HEVC之5 帧间预测
- python没基础能自学吗-50K大牛告诉你,没有任何编程基础,到底应该怎么自学Python...
- 最齐全的装饰贴图素材,速来收藏
- 如何用 NAS 搭建属于自己的云端书库 | 极客分享第 32 期
- 杭州电子科技大学acm--2006
- win8/win10任务栏/语言栏跳动/闪烁
- 服务器系统可以重装系统,服务器上可以重装操作系统吗
- 魔方教程--很多教程都不对,整理并实践了一下
- 软路由连接NAS做链路聚合
- FPGA通信第二篇--UDP
- 模拟器启动不起来怎么解决
- GitChat优质文章-SpringBoot集成Elasticsearch
- 【Python处理EXCEL】基础操作篇:在Python中导入EXCEL数据
- bcb获取计算机名称,win7老电脑共享打印机无法连接0x00000bcb错误的修复方法
- 三分钟扫盲,网络割接如何高效进行?割接前后有哪些步骤和注意点?
- 网易新游流星蝴蝶剑手游开测,流星蝴蝶剑手游安卓模拟器电脑版攻略提前看
热门文章
- 同一个字体,不同平台完全不同
- 反思:前一段时间的开发中,忽略了对象概念
- 不看好的Android火了,看好的WebOS死了
- 求最大公约数欧几里得算法
- linux c多线程进度条,Ubuntu 13.04,g++4.7,Pthread实现多线程模拟实现下载进度条
- php 中文字符串长度_php中计算中文字符串长度、截取中文字符串的函数代码
- java 停止定时器_实例助解java定时器设置及停止的方法
- ajax请求进error怎么弹出错诶信息,在ajax请求jqgrid之后出现错误时显示错误消息...
- php big5 转utf8,php如何实现big5转utf8
- python爬虫工程师必学app数据抓取实战_另辟蹊径,appium抓取app应用数据了解一下!...