WSDL是Web Services描述语言(Web Service Description Language)的英文缩写,它是一个描述Web Services功能的协议,由微软和IBM联合开发的。WSDL描述了Web Services所采用的协议和格式,它和UDDI的结合促进全球Web Services的应用.
Web Services是一种部署在Web上的对象,我们需要对该对象的调用和通信以某种结构化的方式(即XML)进行描述,这也是Web Services即时装配的基本保证。WSDL正是这样一种描述语言,它定义了一套基于XML的语法,用来将Web Services描述为能够进行消息交换的服务访问点的集合,从而满足了这种应用需求。
WSDL文档将Web Services定义为服务访问点或端口的集合。Web Services的WSDL文档把服务访问点和消息的抽象定义与具体的服务部署和数据格式的绑定分离开来,因此可以对抽象定义进行重用。WSDL文档中的消息是指对数据的抽象描述,而端口类型是指操作的抽象集合,端口类型使用的具体协议和数据格式规范构成了一个绑定,将Web访问地址与可再次使用的绑定相关联来定义一个端口,而端口的集合则定义为服务。在一个WSDL文档中,定义Web Services一般使用下列元素:
l Types(类型):数据类型定义容器,提供了用于描述交换消息的数据类型定义,它使用某种类型系统,一般使用XML Schema中的类型,如XSD。
l Messages(消息):消息数据结构的抽象类型化定义,消息包括多个逻辑部分,每一个部分与某种类型系统中的一个定义相关。消息使用Types所定义的类型来定义整个消息的数据结构。
l Operations(操作):对服务中所支持的操作的抽象描述。一般来说,单个Operations描述了一个访问入口的请求/响应信息对
l PortType(端口类型):某个访问入口点类型所支持的操作的抽象集合,这些操作可以有一个或多个服务访问点来支持,每个操作只想一个输入消息和多个输出消息。
l Binding(绑定):特定端口类型的具体协议和数据格式规范的绑定,它是由端口类型定义的操作和消息指定具体的协议和数据格式规范的结合。
l Port(端口):协议/数据格式绑定与具体Web访问地址组合的单个服务访问点,它指出了用于绑定的地址,因此定义了单个通信终端。
l Service(服务):相关服务访问点的集合,它集成了一组相关的端口。
Types、Message、Operations和PortType描述了调用Web Services的抽象定义,他们与具体的Web Services部署细节无关,这些抽象定义是可以重用的,它相当于IDL描述的对象接口标准。但是这些抽象定义的对象到底是用哪种语言实现,遵从什么平台的细节规范,被部署在什么机器上则是由元素Binding、Port和Service所描述。
WSDL的设计完全继承了以XML为基础的开放设计理念,它允许通过扩展使用其他的类型定义语言,允许使用多种传输协议和消息格式(SOAP/HTTP、HTTP-GET/POST以及MIME等),同时也应用了软件复用概念,把抽象顶一层和具体部署层分离开来,增加了抽象定义层的复用性。
WSDL的文档结构:
WSDL是一种用于描述WebServices的XML语言,它以一种结构化的方式将WebServices描述为一组对消息进行操作的网络端点,并将服务定义为网络终端或端口的集合。在WSDL中,抽象定义与具体的网络部署或数据绑定时分开的,这样就可以重用抽象定义。WSDL没有引入新的类型定义语言,而是把XML Schema当作它规范的类型系统。另外,WSDL也允许通过扩展使用其他类型的语言。WSDL定义了一种通用banding机制,使用此机制可以对抽象定义进行重用。
WSDL的编写:
编写WSDL基本上可以分为四个步骤,四个步骤完成之后,Web Services就可以用于部署,他们分别是:创建服务接口、指定参数、消息传递和传输、创建实现文件。
联系客服