WSDL编写的五个步骤

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

WSDL编写的五个步骤

我们以http://blog.csdn.net/hongbo781202/archive/2004/07/21/47135.aspx中的案例来说明.

1)声明名称空间

必须在 <definitions> 元素中提供各种名称空间的声明.

<definitions

targetNamespace="http://loans.org/wsdl/loan-approval"

xmlns="http://schemas.xmlsoap.org/wsdl/"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"

xmlns:lns="http://loans.org/wsdl/loan-approval">

三个必须做的外部名称空间声明是 WSDL、SOAP 和 XSD(XML 模式定义)

xmlns="http://schemas.xmlsoap.org/wsdl/"是WSDL名称空间

xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 是SOAP名称空间,这里因为是用做BPEL4WS,所以

不需要该名称空间

xmlns:xsd="http://www.w3.org/2001/XMLSchema"是XSD名称空间

2)编写服务

<definitions> 元素包含一个或多个 <portType> 元素,实际上,每个元素都是您希望表示的一系列

operation。或者,您也可以将单个 portType 元素看作是将各种方法组成类的一个逻辑分组。我们称

portType为服务---这就是"WEB服务"这个名称的由来.

<portType name="loanServicePT">

<operation name="request">

<input message="lns:creditInformationMessage"/>

<output message="lns:approvalMessage"/>

<fault name="unableToHandleRequest"

message="lns:errorMessage"/>

</operation>

</portType>

可以看出,portType是operation的集合.一个operation是一个方法,那一个portType不就是一个类吗?一个

类,我们可以看作一个服务.

3)指定参数

operation指定了输入的参数和输出的参数,在 WSDL 术语中,所有参数称为“消息”。

<message name="creditInformationMessage">

<part name="firstName" type="xsd:string"/>

<part name="name" type="xsd:string"/>

<part name="amount" type="xsd:integer"/>

</message>

一个消息可以有多个part元素,part元素指定名称和类型.

4)与SOAP绑定

WSDL以一种抽象方式定义了操作和消息,而不考虑实现的细节。实际上,WSDL 的任务是定义或描述 Web

服务,然后提供一个对外部框架的引用来定义 WSDL 用户将如何实现这些服务。可以将这个框架当作

WSDL 抽象定义和它们的实现之间的“绑定(binding)”。一般是与SOAP绑定,当然,也不是必须的.

5)指定实现

当您在 UDDI 注册中心发布 Web 服务时,会使用它.

最后两个步骤把WSDL与SOAP/UDDI结合起来了.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航