如何看懂一个WSDL文档

来源:百度文库 编辑:神马文学网 时间:2024/04/26 07:12:48
WSDL 指网络服务描述语言 (Web Services Description Language)。一个WSDL文档是一个服务的描述,它描述了:服务名,服务地址,服务能用什么协议访问,服务有哪些方法,每个方法有几部分参数,每个参数的类型。
在一个WSDL文档中,你最经常看到的元素前缀会有wsdl、soap、xsd。当然这些前缀是与命名空间URI对应的,前缀是可以自己定义的,或许与此不同,但大都这么定义。
WSDL在设计时,充分考虑了,各个元素模块的重用(好像一个类中定义了一些方法,可被不同方法共同调用)如:wsdl:binding、wsdl:portType、wsdl:message,你定义的这个元素可能被几个地方引用到。所以WSDL设计者把它设计的够精简、灵活。
下面我基于WSDL 1.2 语法分别对三个命名空间的经常用到的元素解释一下:最好从下往上看
//文档的根元素,表示这是一个服务的定义,在此定义中默认的名字空间URI为“http://axisversion.sample”.


This service is to get the running Axis version

//为它表示所有消息中能使用的基本元素类型,如一个方法三个参数的其中一个参数的类型。


//为了最大程度的平台中立性,WSDL 使用 XML Schema 语法来定义数据类型
















//这是定义一个消息,是一次服务调用的一个消息。也就是下面的方法可以用到(指定)的方法参数。


//这是这个消息的第一人部分,同方法的第一个参数




*//端口类型,它表示被某种端口类型(访问协议)指定的一组可被这个端口执行的操作,以及相关消息,你可以它理解为可被调用的一个函数库。

//操作,它表示其中一个操作

//输入,用它指定一个输入消息

//输出,用它指定一个返回消息

//错误,用它指明发生错误时,返回的消息



//绑定,此元素详细描述了某个端口,的消息传输协议和消息包装格式。(用于服务器端收到消息中的解析)


//此处用于表示,当收到一个消息请求方法为“urn:getVersion”时,用此元素包含的描述定义来解析此消息。并确定消息所请求的方法所对应的服务的方法“wsdl:operation name="getVersion”。  












//SOAP:binding是采用SOAP1.1版本。soap12:binding是采用SOAP1.2版本, 并且是采用SOAP规范来形成HTTPRequest















//此binding 是采用HTTP规范来填写消息内容












//此元素用于描述一个服务定义中其中的一个服务(可定义多个服务)。和此服务所有可访问的端口和访问地址