Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间, 无论它们所使用的语言、 平台或内部协议是什么, 都可以相互交换数据。Web Service是自描述、 自包含的可用网络模块, 可以执行具体的业务功能。Web Service也很容易部署, 因为它们基于一些常规的产业标准以及已有的一些技术,诸如标准通用标记语言下的子集XML、HTTP。Web Service减少了应用接口的花费。Web Service为整个企业甚至多个组织之间的业务流程的集成提供了一个通用机制。

WebService遵循SOAP协议通过XML封装数据,然后由Http协议来传输数据。通常要调用WebService接口需要暴露一个wsdl文档来告诉调用者,可以调用什么方法,需要什么参数,返回值类型等。文档地址通常以wsdl结尾。

如http://www.webxml.com.cn/webservices/DomesticAirline.asmx?wsdl,可以通过浏览器打开,如下图所示:

先来介绍几个概念:

  • 调用方法名

调用方法名,在webservice暴露的wsdl文档中给出,配合命名空间使用调用接口

  • 命名空间

规范webservice接口,方便调用者调用。

  • 参数

参数就是,调用该接口需要提供的参数。

  • 参数类型

参数类型就是,调用该接口需要提供参数的类型。

如上图所示,wsdl文档描述的接口信息。下面开始wsdl接口的调用。

使用hutool的SoapClient调用WebService接口步骤:

  1. 引入依赖
<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.7.22</version>
</dependency>
  1. 代码调用
//wsdl文档地址
String wsdlUrl = "http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl";
//创建soap客户端
SoapClient soapClient = SoapClient.create(wsdlUrl)// 设置调用方法名称以及命名空间.setMethod("getWeatherbyCityName", "http://WebXml.com.cn/")// 设置参数名称及参数值.setParam("theCityName", "深圳")// 设置超时时间.setConnectionTimeout(15000).setReadTimeout(15000).timeout(15000);// 还有其他可以配置,根据自己的需求配置
// 调用webservice接口
String result = soapClient.send();
// 打印
System.out.println(result);
  1. 结果

其他方式调用:

  • IDEA生成调用类调用接口
  • CXF调用
  • RPC调用
  • HttpClinet调用

Java调用WebService接口相关推荐

  1. java调用接口速度慢,Java 调用 webservice 接口,为什么这么慢

    Java 调用 webservice 接口,为什么这么慢,有没有好的优化方案,本人目前改成 http 方式发 soap 消息调用,速度依旧很慢,维持在平均 100ms 下不来. 之前用 cxf 的 J ...

  2. Apache CXF生成java代码用java调用Webservice接口

    这里写自定义目录标题 使用java调用webservice接口 使用java调用webservice接口 当我们使用java去访问webservice的接口时,有很多种方式,这里我们使用apache ...

  3. java 调用webservice 接口,并解析返回参数

    java 调用webservice 接口,并解析返回参数 1. 设置传参,例如以下格式: // 确定传参格式以及赋值 String reqXml = "<createAppParam& ...

  4. java调用webservice接口(.asmx)

    前几天对接阿里云短信接口时,需要调用其他系统的数据,该系统开发人员给我提供了webservice接口.对于从来没见过webservice接口的我,真的是一脸懵.现在把记录一下,方便自己以后用,说不定也 ...

  5. java 调用webservice接口

    RPC调用webservice接口 maven支持包: <dependency><groupId>javax.xml.rpc</groupId><artifa ...

  6. java调用webService接口的几种方法

    webservice的 发布一般都是使用WSDL(web service descriptive language)文件的样式来发布的,在WSDL文件里面,包含这个webservice暴露在外面可供使 ...

  7. Java调用WebService接口之利用hutool工具包实现

    最近要对接金蝶财务系统,对方提供了一个webService接口.而且测试接口地址还是内网的,每改一处代码都要部署堡垒机去测试,光是一个登录接口就花了我两天时间很是无语(主要是接口文档地址不会看) 接口 ...

  8. java调用webservice接口结果返回空

    背景:java程序调用c#写的一个接收处理webservice接口的服务(中转),远程第三方提供真正的接口. 问题:调用结果为list,一个空list 猜想:入参的值有误,返回记录为空:接口有问题,只 ...

  9. Java调用WebService接口实现发送手机短信验证码功能,java 手机验证码,WebService接口调用...

    近来由于项目需要,需要用到手机短信验证码的功能,其中最主要的是用到了第三方提供的短信平台接口WebService客户端接口,下面我把我在项目中用到的记录一下,以便给大家提供个思路,由于本人的文采有限, ...

  10. Java调用WebService接口实现发送手机短信验证码功能

    为什么80%的码农都做不了架构师?>>>    一.样式示例: 二.前台的注册页面的代码:reg.jsp <%@ page language="java" ...

最新文章

  1. 改公司demo板块样式
  2. Liveness 探测 - 每天5分钟玩转 Docker 容器技术(143)
  3. 猎豹浏览器怎么收藏网页 网页收藏方法简述
  4. Eclipse Memory Analyzer分析内存使用总结
  5. 图片垂直居中的CSS技巧
  6. 万能广告促销海报,找不到灵感也不怕
  7. java中que_java中==和eques比较
  8. 在eclipse中搭建struts2框架的详细过程
  9. python自动化办公教程百度云-用Python自动办公,做职场高手,16章完整版百度云盘...
  10. instr和substr函数
  11. 1、反转一个3位整数
  12. OC基础--OC中类的定义
  13. modelsim安装教程
  14. PayPal贝宝集成
  15. 一个pdf怎么分成两个文件?怎样将一个pdf文件分成几个pdf文件或若干个?
  16. 【OpenCV】图片几何特征提取
  17. 小程序之仿小米商城Lite
  18. matlab求梯度的原理,matlab 梯度计算原理
  19. Linux内核中的IPSEC实现2
  20. 裴蜀定理(Noi Color)应用

热门文章

  1. 基于Arduino的蓝牙电子秤
  2. 神州信息盘活农村三资,以金融科技服务三农助推乡村振兴
  3. 四旋翼无人机的动力学模型
  4. 人脸识别门禁系统java实现_基于 Java 实现的人脸识别功能(附源码)
  5. 19年6月英语六级第一套听力单词
  6. Rhino结合AD、keyshot进行建模和渲染
  7. 高通QCC3020应用开发的软件平台的搭建
  8. 高斯滤波算法之MatlabFPGA实现
  9. 16进制发送 mqtt客户端调试工具_MQTT测试工具下载
  10. android4g主板,4G安卓核心板