WSDL测试webservice接口记录

收到一个事情,需要对接第三方API,对方给了个service,看了一下,原来是webservices的。

上一次测试webervice的接口,还是至少八九年前的时候了,这种相对比较老旧的也好久不在使用。

于是,简单搞了一下,从搭环境到测试完成,基本花了10来分钟,对比结果花点时间,也抽空简单记录一下。 

请求:

http://www.shuce.com.cn/services/CommService?wsdl

接口:call

参数:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://service.shuce.com.cn">
<soapenv:Header/>
<soapenv:Body>
<ser:call>
<ser:act>dscx_lz</ser:act>
<!--1 or more repetitions:-->
<ser:args>74481885-4244-47d9-aa51-88e2aabebdbc</ser:args>
<ser:args>cxveh</ser:args>
<ser:args>C372DD</ser:args>
<ser:args>02</ser:args>
</ser:call>    
</soapenv:Body>
</soapenv:Envelope>

 

返回:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<callResponse xmlns="http://service.shuce.com.cn">
<callReturn>{"ret":1,"clpp":"宝马牌","clxh":"BMW7202ES(BMWX1)","gcjk":"国产","zzg":"中国","zzcmc":"华晨宝马汽车有限公司","fdjxh":"N46B20E","hdzk":"5","ckg":"4477*1798*1577","csys":"棕","rlzl":"汽油","pl":"1995","gl":"122","cllx":"小型轿车","syxz":"非营运","ccdjrq":"20130917","zt":"正常","hbdbqk":"GB18352.3-2005(国Ⅳ阶段)","ccrq":"20130522","yxqz":"20190930","qzbfqz":"20991231"}
</callReturn>
</callResponse>
</soapenv:Body>
</soapenv:Envelope>

 

json格式化结果:

{
"ret": 1,
"clpp": "宝马牌",
"clxh": "BMW7202ES(BMWX1)",
"gcjk": "国产",
"zzg": "中国",
"zzcmc": "华晨宝马汽车有限公司",
"fdjxh": "N46B20E",
"hdzk": "5",
"ckg": "4477*1798*1577",
"csys": "棕",
"rlzl": "汽油",
"pl": "1995",
"gl": "122",
"cllx": "小型轿车",
"syxz": "非营运",
"ccdjrq": "20130917",
"zt": "正常",
"hbdbqk": "GB18352.3-2005(国Ⅳ阶段)",
"ccrq": "20130522",
"yxqz": "20190930",
"qzbfqz": "20991231"
}

 

其他

后来,我看了一下别的wsdl:

http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl

做了一个测试,结果测试OK,简要也记录一下

request:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://WebXml.com.cn/"><soapenv:Header/><soapenv:Body><web:getCountryCityByIp><!--Optional:--><web:theIpAddress>115.239.210.27</web:theIpAddress></web:getCountryCityByIp></soapenv:Body>
</soapenv:Envelope>

response:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><getCountryCityByIpResponse xmlns="http://WebXml.com.cn/"><getCountryCityByIpResult><string>115.239.210.27</string><string>浙江省绍兴市 电信</string></getCountryCityByIpResult></getCountryCityByIpResponse></soap:Body>
</soap:Envelope>

...

如果你想要尝试一下,进行一些测试,这里提供了一些wsdl,可以用来测试,可以试试。

 

所谓授之以鱼,不如授之以渔。这里也补上一些前提和方法:

下载地址:

官网:https://www.soapui.org/professional/soapui-pro.html

文件地址:http://cncspace.onlinedown.net/down/SoapUI-5.2.1-mac-bin.zip

下载地址:http://www.onlinedown.net/soft/177299.htm

下载之后的安装很简单,略过,简要提一下启动。如果用的是mac的话,这样启动:

启动命令:

cd /Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin
./soapui.sh

haodeMBP:bin hao$ pwd

/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin

haodeMBP:bin hao$ ls

SoapUI-Spashscreen.png installationcomplete.sh mockservicerunner.sh soapui-errors.log soapui.sh toolrunner.sh wargenerator.sh

actions listeners securitytestrunner.sh soapui-log4j.xml starter-page.html uninstallactiontrack.sh

ext loadtestrunner.sh soapui-5.2.1.jar soapui.log testrunner.sh updateinstallation.sh

haodeMBP:bin hao$ ./soapui.sh 

================================

=

= SOAPUI_HOME = /Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1

=

================================

Configuring log4j from [/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-log4j.xml]

16:26:15,406 INFO  [DefaultSoapUICore] Creating new settings at [/Users/hao/soapui-settings.xml]

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".

SLF4J: Defaulting to no-operation (NOP) logger implementation

SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

16:26:16,523 INFO  [PluginManager] 0 plugins loaded in 3 ms

16:26:16,523 INFO  [DefaultSoapUICore] All plugins loaded

Configuring log4j from [/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-log4j.xml]

16:26:16,729 INFO  [DefaultSoapUICore] Creating new settings at [/Users/hao/soapui-settings.xml]

16:26:16,740 INFO  [PluginManager] 0 plugins loaded in 0 ms

16:26:16,740 INFO  [DefaultSoapUICore] All plugins loaded

16:26:23,688 INFO  [DefaultSoapUICore] Defaulting to native L&F for Mac OS X

16:26:23,740 INFO  [SoapUI] Used java version: 1.8.0_181

16:28:17,764 INFO  [SchemaUtils] Added default schema from file:/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-5.2.1.jar!/com/eviware/soapui/resources/xsds/xop.xsd with targetNamespace http://www.w3.org/2004/08/xop/include

16:28:17,781 INFO  [SchemaUtils] Added default schema from file:/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-5.2.1.jar!/com/eviware/soapui/resources/xsds/XMLSchema.xsd with targetNamespace http://www.w3.org/2001/XMLSchema

16:28:17,782 INFO  [SchemaUtils] Added default schema from file:/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-5.2.1.jar!/com/eviware/soapui/resources/xsds/xml.xsd with targetNamespace http://www.w3.org/XML/1998/namespace

16:28:17,782 INFO  [SchemaUtils] Added default schema from file:/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-5.2.1.jar!/com/eviware/soapui/resources/xsds/swaref.xsd with targetNamespace http://ws-i.org/profiles/basic/1.1/xsd

16:28:17,783 INFO  [SchemaUtils] Added default schema from file:/Users/hao/Downloads/SoapUI-5.2.1-mac-bin/SoapUI-5.2.1/bin/soapui-5.2.1.jar!/com/eviware/soapui/resources/xsds/xmime200505.xsd with targetNamespace http://www.w3.org/2005/05/xmlmime

可见启动之后,就打开了对应的应用程序窗口。

至于工具的使用,我向来觉得是不用看教程,任何工具拿上来随便点两下,就明白了,这个soapUI也是一样的。


 

其实方法这里已经写的很清楚了,而且没什么问题。照着操作即可。

以上是原创,下面这一段是摘录的。

测试操作步骤如下:

  (1)首先找到cxf-webservice.xml配置信息中地址,在浏览器中出入:http://127.0.0.1:8080/ssg?wsdl会生成文档说明,直接给要对接的用户即可

<jaxws:endpoint id="ssg" implementor="cn.exchange.cxf.DataExchangeWebServiceImpl"address="http://127.0.0.1:8080/ssg"></jaxws:endpoint>

  (2)使用soapUI测试接口:

  注意:在测试之前,要先开启接口项目

  ①在接口项目开启之后,打开工具soapUi,新建(file→create empty project),如下图所示:

  ②右击工程project——add wsdl,如下图所示:

  打开如下图的页面:

  ③然后进入如下页面:(修改:应该双击"request1")

  双击"request1"出现如下的窗口:

 

  ④在"?"号处输入相关的参数,点击运行,如果右侧空白没有出现错误的信息,说明接口方法可以使用

  测试失败,如下所示:(对于不同的项目,可能提示信息有所不同,要视情况而定,这里不是绝对的结果)

  测试成功,如下图:(对于不同的项目,可能提示信息有所不同,要视情况而定,这里不是绝对的结果)

 

可见,WSDL的测试相对比较简单,如果没接触过的话,花几分钟看下就会明白。

如上。

 

--20180912 15:49于沪 长宁白猫科技园

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/450717.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

idea窗口下方滚动条不明显设置

在使用idea时&#xff0c;下方的滚动条老是显示不明显&#xff0c;每次点击拖拽都很费劲&#xff0c;在网上找了很多相关设置&#xff0c;最后确定了一个最好的办法解决问题&#xff1a; Shift &#xff08;上档&#xff09; 鼠标滚动&#xff0c;这样就可以横向翻滚了&#…

把握本质规律——《数学之美》作者吴军

无论是互联网&#xff0c;还是手机、电视&#xff0c;现代通信都遵循信息论的规律&#xff0c;整个信息论的基础都是数学。搜索引擎、语音识别、机器翻译也都是我们生活中离不开的技术&#xff0c;数学也是解决这些问题的最好工具。在《浪潮之巅》出版后&#xff0c;吴军将蕴含…

Hibernate4 注解方法说明

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1.类级别注解 Entity 映射实体类 Table 映射数句库表 Entity(name"tableName") - 必须&#xff0c;注解将一个类声明…

消息队列常见面试题

文章目录2. 消息队列2.1 MQ有什么用&#xff1f;2.2 说一说生产者与消费者模式2.3 消息队列如何保证顺序消费&#xff1f;2.4 消息队列如何保证消息不丢&#xff1f;2.5 消息队列如何保证不重复消费&#xff1f;2.6 MQ处理消息失败了怎么办&#xff1f;2.7 请介绍消息队列推和拉…

Mybatis 详解--- 一级缓存、二级缓存

2019独角兽企业重金招聘Python工程师标准>>> Mybatis 为我们提供了一级缓存和二级缓存&#xff0c;可以通过下图来理解&#xff1a; ①、一级缓存是SqlSession级别的缓存。在操作数据库时需要构造sqlSession对象&#xff0c;在对象中有一个数据结构&#xff08;Hash…

我的nabcd

我们组要做的软件是一款MP3播放软件&#xff0c;名字叫TDG音乐 N&#xff08;need需求&#xff09;&#xff0c;由于现在版权越来越被重视&#xff0c;许多播放软件里面的大部分歌曲都是收费的&#xff0c;不想花钱又想听可怎么办呢&#xff0c;只能在网上找免费资源&#xff0…

【C/C++和指针】深度解析---指针与数组 【精华】

一&#xff0c;引例子 二维数组可以使用指向数组的指针代替&#xff0c;而指针数组才可以用指向指针的指针代替。 [html] view plaincopy#include<iostream> using namespace std; void main() { char *a[]{"Hello","the","World&q…

Redis常见面试题详解

文章目录1. Redis1.1 Redis可以用来做什么&#xff1f;1.2 Redis和传统的关系型数据库有什么不同&#xff1f;1.3 Redis有哪些数据类型&#xff1f;1.4 Redis是单线程的&#xff0c;为什么还能这么快&#xff1f;1.5 Redis在持久化时fork出一个子进程&#xff0c;这时已经有两个…

IntelliJ 创建main函数、for循环、输出语句快捷键

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 今天偶然发现了IntelliJ中 创建main函数的快捷键&#xff0c;依次还有for循环&#xff0c;System.out.println(); 在编写代码的时候直接…

CentOS新增用户并授予sudo权限

2019独角兽企业重金招聘Python工程师标准>>> 新增用户 添加用户useradd demo设置用户密码passwd demo授予sudo权限 输入以下命令&#xff0c;编辑sudoers配置&#xff1a;visudo找到以下行root ALL(ALL) ALL增加以下内容&#xff1a;demo ALL(ALL) ALL保存后登录dem…

跨站脚本功攻击,xss,一个简单的例子让你知道什么是xss攻击

跨站脚本功攻击&#xff0c;xss&#xff0c;一个简单的例子让你知道什么是xss攻击 一、总结 一句话总结&#xff1a;比如用户留言功能&#xff0c;用户留言中写的是网页可执行代码&#xff0c;例如js代码&#xff0c;然后这段代码在可看到这段留言的不同一户的显示上就会执行。…

用业绩建立信任

当年从香港到美国&#xff0c;对于中学毕业的郭尊华来说&#xff0c;算是一个失败。他尽管家境普通&#xff0c;但因为成绩不佳进不了香港的大学&#xff0c;不得不远赴美国读书。在课余做过挖地、当侍者等多份工作的他&#xff0c;在大三的时候终于得到一份初级工程师的工作。…

idea 快捷键 小结

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。1.setting 打开快捷键&#xff1a;ctrl alt s 在 file - setting 中。 2.回到默认设置&#xff1a;删除如下路径的文件夹 C:\Users…

Jenkins常用插件

Generic Webhook Trigger Plugin触发器webhook用户触发构建Deploy to container Plugin部署到tomcatGradle Plugin Gradle插件构建项目Maven Plugin Maven插件构建项目Git Plugin Git插件克隆项目GitHub plugin GitHub插件集成githubSSH Slaves plugin SSH插件用于远程登录Buil…

spark广播变量 和 累加器

1 为什么使用广播变量 和 累加器 变量存在的问题&#xff1a;在spark程序中&#xff0c;当一个传递给Spark操作(例如map和reduce)的函数在远程节点上面运行时&#xff0c;Spark操作实际上操作的是这个函数所用变量的一个独立副本。这些变量会被复制到每台机器上&#xff0c;并且…

分布式常见面试题详解

文章目录1. 分布式1.1 什么是CAP原则&#xff1f;1.2 说一说你对高并发的理解1.3 如何实现分布式存储&#xff1f;1.4 说一说你对分布式事务的了解1.5 分布式系统如何保证最终一致性&#xff1f;1.6 谈谈你对分布式的单点问题的了解1.7 HTTP和RPC有什么区别&#xff1f;1.7 HTT…

C11标准委员会成员解读C语言新标准

导读&#xff1a;C语言国际标准新的新草案之前已经公布&#xff0c;新标准提高了对C的兼容性&#xff0c;并将新的特性增加到C语言中。此外支持多线程的功能也受到了开发者的关注&#xff0c;基于ISO/IEC TR 19769:2004规范下支持Unicode&#xff0c;提供更多用于查询浮点数类型…

如何将拷贝过来的数据 *.ibd 文件生效

1.将拷贝的数据文件 "qqq.idb"放在自己的数据库中. 一般存放在 mysql/ data/ databasename 下 2. "qqq.idb" 改个名字-->"qqq--.idb", 主要是避免冲突&#xff01; 3.执行 create table qqq(...) 语句&#xff0c;此时除了会生成一个 qqq…

windows 下启动zookeeper的zkServer.cmd服务闪退

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 解决方案把conf目录下的默认zoo_sample.cfg的文件名字改成zoo.cfg 即可&#xff1a; 以上转自&#xff1a;http://blog.csdn.net/qq4960…

设计模式常见面试真题详解

文章目录1. 设计模式1.1 说一说设计模式的六大原则1.2 说一下六大原则中的开闭原则1.3 手写一个单例模式1.4 手写一个线程安全的单例模式1.5 说一说你对工厂模式的理解1.6 简单工厂模式和抽象工厂模式有什么区别&#xff1f;1.7 如何实现工厂模式&#xff1f;1.8 说一说你策略模…