WebService 之 WSDL文件 讲解

恩,我想说的是,是不是经常有人在开发的时候,特别是和第三方有接口的时候,走的是SOAP协议,然后用户给你一个WSDL文件,说按照上面的进行适配,嘿嘿,这个时候,要是你以前没有开发过,肯定会傻眼,那如果你想学习的话,就认真的看下面的讲解咯:

一、WSDL概述
WebServices Description Language (WSDL Web服务语言)是一个用于精确描述Web Service的文档格式。
二、WSDL基本结构
WSDL文档是一个遵循WSDL XML模式的XML文档(文档实例);类似于:SOAP文档是一个遵循SOAP XML模式的XML文档(文档实例);
一个WSDL文档的根元素是definitions元素,WSDL文档包含7个重要的元素:types, import, message, portType, operations, binding和service元素
三、WSDL声明

    3.1 XML声明

       xml version="1.0" encoding="UTF-8"?>
        WSDL的声明必须定义成使用:UTF-8 或者UTF-16 编码。

    3.2 definition元素
          所有WSDL文档的根元素都是definition元素。   
          <definitions name="BookQuoteWS"
                  targetNamespace="http://www.Monson-Haefel.com/jwsbook/BookQuote"
                  xmlns:mh="http://www.Monson-Haefel.com/jwsbook/BookQuote"
                  xmlns:soapbind="http://schemas.xmlsoap.org/wsdl/soap/"
                     xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                 xmlns="http://schemas.xmlsoap.org/wsdl/">

definition元素中一般包括若干个XML命名空间;
http://schemas.xmlsoap.org/wsdl/是默认的命名空间,这样就可以不用显式地定义每一个WSDL元素的命名空间了,例如: …;文档中所有的元素缺省应该属于这个命名空间。
definition元素的的一个属性是name,此属性不重要可以没有;
定义了targetNamespace命名空间,它为在模式中显式创建的所有新类型均声明了XML命名空间,而且上面的例子中赋予了mh前缀。

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

message>

 <part name="price" type="xsd:float" />

message>

<operation name="getBookPrice">

      <input name="isbn" message="mh:GetBookPriceRequest"/>

      <output name="price" message="mh:GetBookPriceResponse"/>

operation>

portType>

四、WSDL抽象接口
Message、portType和operation元素用于描述Web服务的抽象接口,相当于JAVA或者C++中编程中的类的接口。其中 portType相当于类接口的名称;operation相当于接口中包含的函数,message相当于函数的参数和返回值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值