一、创建证书

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接口相关推荐

  1. java webservice 证书_java调用基于https的webservice(不生成密钥,基于spring配置,接收所有证书)...

    我的blog:个人博客 最近工作需要调用外部的webservice,之前一直搞的是基于http的ws,没啥好说的 网上很多教程.这次对方提供的接口是基于https的接口,在网上查找都是需要生成密钥,安 ...

  2. 基于php汇率接口调用实例,基于C#的汇率接口调用代码实例

    基于C#的汇率接口调用代码实例 代码描述:基于C#的汇率接口调用代码实例 代码平台:聚合数据 using System; using System.Collections.Generic; using ...

  3. 业务逻辑:完成客户下单后前台系统的数据处理并调用后台系统服务处理业务 webservice接口调用 有用...

    思路: 页面提交表单后,在Action类中将页面提交的参数进行组装,随后通过使用Webservice技术来远程调用后台系统的业务接口服务来进行订单的保存操作 操作步骤: 在前台系统的Action类中通 ...

  4. Postman调用阿里云HTTPS动态注册接口(一型一密)

    按照阿里云文档: 请求方式:post 地址格式: https://iot-auth.cn-shanghai.aliyuncs.com/auth/register/device 如下图写入参数: sig ...

  5. Java使用XFire调用WebService接口

    看了一些Java调用WebService接口的例子,很多都是Ctrl+C,Ctrl+V的,其中有很多拿来使用后发现有错误,令人郁闷,特此写了一篇经过测试的,只是一个小例子. 服务端(为客户端提供Web ...

  6. JAVA中使用XFire调用WebService接口

    http://blog.csdn.net/wangjian223344/article/details/11899187 首先以helloworld为例.网上看了好多xifre的例子几乎没好用的烦燥 ...

  7. java wsdl xfire_Java使用XFire调用WebService接口

    服务端(为客户端提供Webservice接口): 使用工具:myeclipse-8.5-win32,apache-tomcat6.0 开发步骤: 1.创建工程 File->New->Web ...

  8. axis2 java.net.url_axis2调用.net写的webservice接口实现,指定参数名

    参考文章:https://blog.csdn.net/wangyu2016/article/details/76022928 使用axis2调用调用.net写的webservice接口时出现参数无法传 ...

  9. java使用axis2调用webservice接口实例

    说明:我目前的项目环境是struts2+spring+mybatis+oracle,以下代码是java使用axis2调用webservice接口实例. import javax.xml.namespa ...

  10. nodejs调用webservice接口(https)

    之前对接的webservice接口都是发布在http上的,今天突然拿到一个接口地址是https的,意味着需要证书验证,利用https模块去请求接口有一个入参可以直接忽略证书,但是nodejs中调用we ...

最新文章

  1. Ubuntu安装TensorFlow-gpu及cuda9.0(不给自己找麻烦)
  2. matlab求两向量夹角_高中数学《平面向量的数量积》说课稿
  3. note同步不及时 one_朱海舟回应锤子便签同步不及时:工程师已经解决
  4. mqtt判断设备是否在线_如何在 Python 中使用 MQTT
  5. Overview of HEVC之5 帧间预测
  6. python没基础能自学吗-50K大牛告诉你,没有任何编程基础,到底应该怎么自学Python...
  7. 最齐全的装饰贴图素材,速来收藏
  8. 如何用 NAS 搭建属于自己的云端书库 | 极客分享第 32 期
  9. 杭州电子科技大学acm--2006
  10. win8/win10任务栏/语言栏跳动/闪烁
  11. 服务器系统可以重装系统,服务器上可以重装操作系统吗
  12. 魔方教程--很多教程都不对,整理并实践了一下
  13. 软路由连接NAS做链路聚合
  14. FPGA通信第二篇--UDP
  15. 模拟器启动不起来怎么解决
  16. GitChat优质文章-SpringBoot集成Elasticsearch
  17. 【Python处理EXCEL】基础操作篇:在Python中导入EXCEL数据
  18. bcb获取计算机名称,win7老电脑共享打印机无法连接0x00000bcb错误的修复方法
  19. 三分钟扫盲,网络割接如何高效进行?割接前后有哪些步骤和注意点?
  20. 网易新游流星蝴蝶剑手游开测,流星蝴蝶剑手游安卓模拟器电脑版攻略提前看

热门文章

  1. 同一个字体,不同平台完全不同
  2. 反思:前一段时间的开发中,忽略了对象概念
  3. 不看好的Android火了,看好的WebOS死了
  4. 求最大公约数欧几里得算法
  5. linux c多线程进度条,Ubuntu 13.04,g++4.7,Pthread实现多线程模拟实现下载进度条
  6. php 中文字符串长度_php中计算中文字符串长度、截取中文字符串的函数代码
  7. java 停止定时器_实例助解java定时器设置及停止的方法
  8. ajax请求进error怎么弹出错诶信息,在ajax请求jqgrid之后出现错误时显示错误消息...
  9. php big5 转utf8,php如何实现big5转utf8
  10. python爬虫工程师必学app数据抓取实战_另辟蹊径,appium抓取app应用数据了解一下!...