zoukankan      html  css  js  c++  java
  • wsdl 结构

    WSDL文档可以分为两部分。分别是抽象部分和具体描述 部分。

    • 抽象部分

      抽象部分以独立于平台和语言的方式定义SOAP消息,它们并不包含任何随 机器或语言而变的元素。<types>、<message>、<portType>属于抽象定义 层。

    • 具体部分

      <binding>、<service>属于具体定义层。所有的抽象可以是单独存在于别的文件中,也可以从主文档中导入


     1. definitions

    定义了文档中用到的各个xml元素的namespace缩写,也界定了本文档自己的 targetNamespace="http://www.jsoso.com/wstest",这意味着其它的XML要引用当前XML中的元素时,要声 明这个namespace。注意xmlns:tns="http://www.jsoso.com/wstest"这个声明,它标示了使用tns这个前缀 指向自身的命名空间。

    2.types

    <types>标签定义了当前的WSDL文档用到的数据类型

    3.message

    <message>元素定义了web service函数的参数。<message>元素中的每个<part>子元素都和某个参数相符。输入参数在<message>元素中定义,与输出参数相 隔离,输出参数有自己的<message>元素

    4.portType

    <portType name="Example">  
    <operation name="toSayHello" parameterOrder="userName">  
    <input message="tns:toSayHello"></input>  
    <output message="tns:toSayHelloResponse"></output>  
    </operation>  
    <operation name="sayHello" parameterOrder="person arg1">  
    <input message="tns:sayHello"></input>  
    <output message="tns:sayHelloResponse"></output>  
    <fault message="tns:HelloException" name="HelloException"></fault>  
    </operation>  
    </portType>  

    在<operation>元素中,name属性表示服务方法名,parameterOrder属性表示方法的参数顺序,使用空格符分割多个参 数,如:“parameterOrder="person arg1”。<operation>元素的子标签<input>表示输入参数说明,它引用<message>标签中的输入参 数。<output>表示输出参数说明,它引用<message>标签中的输出参数。<fault>标签在Java方法中的特别 用来表示异常(其它语言有对应的错误处理机制),它引用<message>标签中的错误参数。

    5.绑定实现定义元素:< binding >

     <binding>标签是完整描述协议、序列化和编码的地方,<types>,<message>和<portType>标签处理抽象的数据内容,而<binding>标签是处理数据传输的物理实现。 
    <binding>标签把前三部分的抽象定义具体化。 
    首先<binding>标签使用<soap:binding>的transport和style属性定义了Web Service的通讯协议HTTP和SOAP的请求风格RPC。其次<operation>子标签将portType中定义的 operation同SOAP的请求绑定,定义了操作名称soapAction,输出输入参数和异常的编码方式及命名空间。 

    6.service

  • 相关阅读:
    strtok和strtok_r
    几种更新(Update语句)查询的方法
    常见的几种RuntimeException
    初识ASP.NET---若干常见错误
    Microsoft.AlphaImageLoader滤镜解说
    情绪管理--不要总做“好脾气”的人。
    Linux中搭建SVNserver
    Java虚拟机的启动与程序的执行
    Ubuntu下deb包的安装方法
    財哥面京东dm的经历【帮財哥发的】
  • 原文地址:https://www.cnblogs.com/rigid/p/4321958.html
Copyright © 2011-2022 走看看