切换导航
首页
技术问答
编程语言
前端开发
移动开发
开发工具
程序设计
行业应用
CMS系统
服务器
频道导航
▸ PHP
▸ Java
▸ Java SE
▸ Python
▸ C#
▸ C&C++
▸ Ruby
▸ VB
▸ asp.Net
▸ Go
▸ Perl
▸ netty
▸ Django
▸ Delphi
▸ Jsp
▸ .NET Core
▸ Spring
▸ Flask
▸ Springboot
▸ SpringMVC
▸ Lua
▸ Laravel
▸ Mybatis
▸ Asp
▸ Groovy
▸ ThinkPHP
▸ Yii
▸ swoole
▸ HTML
▸ HTML5
▸ JavaScript
▸ CSS
▸ jQuery
▸ Bootstrap
▸ Angularjs
▸ TypeScript
▸ Vue
▸ Dojo
▸ Json
▸ Electron
▸ Node.js
▸ extjs
▸ Express
▸ XML
▸ ES6
▸ Ajax
▸ Flash
▸ Unity
▸ React
▸ Flex
▸ Ant Design
▸ Web前端
▸ 微信小程序
▸ 微信公众号
▸ iOS
▸ Android
▸ Swift
▸ Hybrid
▸ Cocos2d-x
▸ Flutter
▸ Xcode
▸ Silverlight
▸ cocoa
▸ Cordova
前端之家
XML
手写wsdl文件
手写wsdl文件
2020-06-05
XML
前端之家
前端之家
收集整理的这篇文章主要介绍了
手写wsdl文件
,
前端之家
小编觉得挺不错的,现在分享给大家,也给大家做个参考。
WSDL(web服务描述语言 Web Service Description Language)是一种基于XML的语言,它为Web服务与外部世界之间提供了一个合约。
解决
了以下两个问题:1.如何
调用
Web服务;2.想从Web服务器得到什么响应。 一个WSDL
文件
的开头有一个<definitions>根
标签
,定义了用到的命名空间。 <wsdl:definitions xmlns:comm="http://new.webservice.namespace" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://new.webservice.namespace"> </definitions> 其中xmlns:comm="http://new.webservice.namespace" 和targetNamespace="http://new.webservice.namespace"必须保持一致。前缀名comm可
修改
为其他值。 根
标签
下面有五个部分的
内容
:类型定义、消息定义、端口定义、绑定和服务 1、类型定义,这部分
内容
包含在wsdl:types
标签
中,用于定义消息中需要用到的数据类型,可以使用W3C XML模式内置类型,也可使用自己定义派生的类型,
自定义
派生类型可在wsdl
文件
中定义也可放在相应的xsd
文件
中,要使用相应的xsd
文件
须在wsdl:types
标签
下的xs:schema中
添加
xmlns:dt="http://schemas.xmlsoap.org/ws/2005/04/discovery" <xs:import namespace="http://schemas.xmlsoap.org/ws/2005/04/discovery" schemaLocation="commlib.xsd"/> 其中dt和"http://schemas.xmlsoap.org/ws/2005/04/discovery"均可
修改
,保持相应的一致即可,schemaLocation指出xsd
文件
所在的位置。xsd
文件
的格式后面再讲。 <wsdl:types> <xs:schema targetNamespace="http://new.webservice.namespace" xmlns:dt="http://schemas.xmlsoap.org/ws/2005/04/discovery" elementFormDefault="qualified"> <xs:import namespace="http://schemas.xmlsoap.org/ws/2005/04/discovery" schemaLocation="commlib.xsd"/> <xs:element name="RequestProbe" type="dt:RequestProbeType"/> <xs:element name="ResponseProbe" type="dt:ResponseProbeType"/> </xs:schema> </wsdl:types> 2、消息定义,用于定义接口的传入消息和传出消息。消息的定义放在wsdl:message中,name
属性
指定消息的名字,后面端口定义的时候会用到。每个wsdl:part
标签
对应一个参数。 <wsdl:message name="MessageRequestProbe"> <wsdl:part name="parameters" element="comm:RequestProbe"/> </wsdl:message> <wsdl:message name="MessageResponseProbe"> <wsdl:part name="parameters" element="comm:ResponseProbe"/> </wsdl:message> 3、端口定义,用于定义服务提供的接口,所有接口均须在wsdl:portType中定义,name用于指定接口的名字,后面绑定需要用到。wsdl:operation
标签
name指定接口的
名称
,输入
输出
在wsdl:input和wsdl:output
标签
中定义,使用wsdl:message name的值。 <wsdl:portType name="PortTypeProbe"> <wsdl:operation name="OperationProbe"> <wsdl:input message="comm:MessageRequestProbe"/> <wsdl:output message="comm:MessageResponseProbe"/> </wsdl:operation> </wsdl:portType> 4、绑定,用于绑定接口和协议,所有绑定关系都得在wsdl:binding
标签
下定义,name
属性
指定该绑定的
名称
,后面定义服务时会用到。type需要设置为wsdl:portType
标签
中name的值。使用SOAP协议的话,还会有soap:binding
标签
,soap:binding有两个
属性
,style和transport,transport的值是http://schemas.xmlsoap.org/soap/http毫无疑问,style有两个取值,rpc和document,rpc表示一个消息,消息里只有一个
方法
名和参数,使用document,可以传递复杂文档。 每一组绑定关系都有一个wsdl:operation
标签
,该
标签
的name值与wsdl:portType下的wsdl:operation name值相同。
属性
soapAction用于指定soap动作的地址和
调用
方式。soapAction的值为targetNamesapce
属性
指定的命名空间和相应的接口名字。接口的输入和
输出
绑定由wsdl:input和wsdl:output绑定,这两个
标签
都有子
标签
soap:body,其use
属性
的取值有两种:encoded和literal。一般来说,encoded和rpc,literal和document搭配使用 <wsdl:binding name="BindProbe" type="comm:PortTypeProbe"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="OperationProbe"> <soap:operation soapAction="http://new.webservice.namespace/OperationProbe"/> <wsdl:input> <soap:body parts="parameters" use="literal"/> </wsdl:input> <wsdl:output> <soap:body parts="parameters" use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> 5、服务,主要用于指定上面所定义的绑定的服务地址。在根
标签
wsdl:service下,可以有许多wsdl:port
标签
,其binding
属性
需要指定为上面定义好的wsdl:binding
标签
的name
属性
值,wsdl:port
标签
下有一个soap:address,其location
属性
为提供WebService服务的
文件
地址。
上一篇:olrconfig.xml 说明
下一篇:xml与json的区别,总结
猜你在找的XML相关文章
10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而...
作者:前端之家 时间:2020-08-12
[CXF REST标准实战系列] 一、JAXB xml与javaBean的转换
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere...
作者:前端之家 时间:2020-08-12
[CXF REST标准实战系列] 一、JAXB xml与javaBean的转换
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket Reprint it anywhere...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
http://blog.jobbole.com/79252/ 引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技...
作者:前端之家 时间:2020-08-12
自定义圆形控件RoundImageView并认识一下attr.xml
(点击上方公众号,可快速关注) 公众号:smart_android 作者:耿广龙|loonggg 点击“阅读原...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
引言 NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(上)
(点击上方公众号,可快速关注) 来源: Long Luo 的博客 链接:http://longluo.github.i...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(中)
接上文 二、JSON XML很好很强大,但是最近有另外一个时代弄潮儿,这就是JSON。现在JSON的光...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析(下)
接上文 2.4 如何解析JSON? Android JSON所有相关类,都在org.json包下。 包括JSONObject、...
作者:前端之家 时间:2020-08-12
10分钟掌握XML、JSON及其解析
原文出处: Long Luo 的博客(@Long_Luo) 引言 NOKIA 有句著名的广告语:“科技以人...
作者:前端之家 时间:2020-08-12
编程分类
HTML
HTML5
JavaScript
CSS
jQuery
Bootstrap
Angularjs
TypeScript
Vue
Dojo
Json
Electron
Node.js
extjs
Express
XML
ES6
Ajax
Flash
Unity
React
Flex
Ant Design
Web前端
微信小程序
微信公众号
最新文章
• 10分钟掌握XML、JSON及其解
• [CXF REST标准实战系列] 一
• [CXF REST标准实战系列] 一
• 10分钟掌握XML、JSON及其解
• 自定义圆形控件RoundImage
• 【XML】
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
• 10分钟掌握XML、JSON及其解
热门标签
更多 ►
关闭广告
单独headers
封装代码
提示错误
整数正则
非0开头
跳页
出页码
antd table
提示URL未注册
公众号支付
vue hash模式
iSlider
车牌键盘
循环图片
echarts 双折
左右布局
DllPlugin
对象创建
打字游戏
圈选
两栏
云函数
蒙版
ES2020
橱窗
无缝滚动轮播
色块碰撞
组件销毁
文档操作