转自:https://technet.microsoft.com/zh-cn/sysinternals/x2ccke44(v=vs.94)

为 XML 文档(定义 Web 服务)定义架构的行业标准 Web 服务描述语言 (WSDL) 提供了两个主要的 SOAP 格式设置选项。这两个选项均在 XML 元素中指定,而不在主 WSDL 命名空间 http://schemas.xmlsoap.org/wsdl/ 中指定,但在命名空间 http://schemas.xmlsoap.org/wsdl/soap/ 中指定。这一次要命名空间可向 SOAP 协议提交 Web 服务。

SOAP 格式设置选项

这两个格式设置选项为:

  • Style:用于子元素,以及 SOAP 消息中 Body 元素可能的二级子项。此选项被指定为 binding WSDL 元素(通常)或 operation 元素的 style 特性。
  • Use:用于 Web 服务方法参数或在下一级别显示的返回值。此选项被指定为 body 元素的 use 特性。

有关 SOAP 规范的详细信息,请参见 W3C 网站 (http://www.w3.org/TR/SOAP)。W3C 网站上还提供了有关 WSDL 规范的详细信息。

Style 特性的允许值

WSDL 允许控制整体 SOAP 正文格式设置的 style 特性采用两个值:

  • RPC:参数或返回值自动放置在自身父级为 SOAP Body 元素的父元素中。参数或返回值显示时不带命名空间限定。SOAP 1.1 规范的第 7 节中介绍了此方案。已指定 style="rpc"

    对于 SOAP 请求,SOAP Body 下的元素根据 WSDL operation 元素(该元素与 Web 服务方法相对应)命名。该元素内的每个元素都表示一个参数,并根据其各自的参数来命名。

    对于 SOAP 响应,SOAP Body 下的元素的名称是追加了 Response 的操作名称。下面的表示返回值的元素名称是操作名称,但带有后缀 Return

  • Document:SOAP Body 元素的内容在 WSDL 中完全指定为在 XML 架构定义中定义的 XML 元素。XML 架构在 WSDL 文档中指定或导入到该文档中。WSDL 并不在意参数和返回值,它只处理 XML 文档。开发人员(或者最好是 Web 服务基础结构)关注参数和返回值如何转换为 XML 架构元素和类型。已指定 style="document"

    顶级 XML 元素被指定为消息的一部分,即,在 message 元素中定义的且指向 XSD 元素声明的 part 元素。通常,最多有一个部分,因此 SOAP Body 内容实际上是一个 XML 文档,但 WSDL 本身并不禁止多个元素。

WSDL 允许控制参数和返回值格式设置的 use 特性采用两个值:

  • Encoded:根据架构来设置格式的数据在 SOAP 1.1 规范的第 5 节中进行了介绍。SOAP 编码将 XML 架构的子集用于 XML 文档与它们所表示的数据之间的绑定。SOAP 编码还对在一个文档中出现多次的元素使用引用。已指定 use="encoded"
  • Literal:根据 XML 架构定义按原义设置格式的数据在 WSDL 文档中指定,或导入到该文档中。已指定 use="literal"

4.使用 WSDL 指定的标准 SOAP 消息格式的更多相关文章

  1. (七)发送、接收SOAP消息(以HttpClient方式)(2)

    一.为什么要用soap 原本我们使用web服务都是根据wsdl生成客户端(生成一堆java文件)然后再调用,本章节讲解如何用soap消息来替代这种方式. 二.SOAP消息格式 SOAP(简单对象访问协 ...

  2. (六)发送、接收SOAP消息(1)

    一.为什么要用soap 原本我们使用web服务都是根据wsdl生成客户端(生成一堆java文件)然后再调用,本章节讲解如何用soap消息来替代这种方式. 二.SOAP消息格式 SOAP(简单对象访问协 ...

  3. 如何在WCF中用TcpTrace工具查看发送和接收的SOAP消息

    WCF对消息加密(只对消息加密,不考虑Authorize)其实很简单,只要在server和client端的binding加入security mode为Message(还有Transport, Tra ...

  4. SOAP消息的传递

    上一篇说了SOAP消息的创建,那么创建好了的SOAP消息要怎么发送给服务端呢? public class SoapTest { private String wsdlUri = "http: ...

  5. JAX-WS创建和处理SOAP消息

    JAX-WS规范是一组XML web services的JAVA API,在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP,在使用JAX-WS过程中,开发者不需要编写任何生成 ...

  6. webservice05#soap消息

    1, SOAPMessage结构图 2, SOAP消息的创建 1>前面的一个简单WebService  服务 package com.yangw.soap.service; import jav ...

  7. webservice系统学习笔记5-手动构建/发送/解析SOAP消息

    手动拼接SOAP消息调用webservice SOAP消息的组成: 1.创建需要发送的SOAP消息的XML(add方法为例子) /** * 创建访问add方法的SOAP消息的xml */ @Test ...

  8. soap消息机制 讲解

    SOAP(Simple Object Access Protocol,简单对象访问协议)作为一种信息交互协议在分布式应用中非常广泛,如WebService.在使用.Net开发WebService时候, ...

  9. Web Service学习之八:Soap消息详解

    一.区别概念 WSDL是网络服务描述语言,是XML文档:它包含一系列描述某个web service的定义或者说是规则.尤其是定义了传输Sope消息的结构 Soap:简单对象访问协议,是交换数据的一种协 ...

随机推荐

  1. 洛谷 P1443 马的遍历

    P1443 马的遍历 题目描述 有一个n*m的棋盘(1<n,m<=400),在某个点上有一个马,要求你计算出马到达棋盘上任意一个点最少要走几步 输入输出格式 输入格式: 一行四个数据,棋盘 ...

  2. Android Studio获取开发版SHA1值和发布版SHA1值,详细过程

    转自原文 Android Studio获取开发版SHA1值和发布版SHA1值的史上最详细方法 前言: 今天我想把百度地图的定位集成到项目中来,想写个小小的案例,实现一下,但在集成百度地图时首先要申请秘 ...

  3. java无依赖读取Excel文件

    说到Java读取Excel文件,用得多的当然是POI或jxls,但今天在看一本书的时候.当中提到使用JdbcOdbcDriver这个驱动类在不依赖第三方库的情况下也能够完毕对Excel文件的读取操作, ...

  4. [B cannot be cast to java.lang.String

    sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.inv ...

  5. shu_1171 十-&gt;二进制转换(输入输出控制)

    cid=1079&pid=19">http://202.121.199.212/JudgeOnline/problem.php?cid=1079&pid=19 分析:主 ...

  6. 10010序列检测器的三段式状态机实现(verilog)

    序列检测器是时序数字电路设计中经典的教学范例,夏宇闻的<verilog数字系统设计教程>一书中有这个例子,用verilog设计一个“10010”序列的检测器.看完后我觉得F和G两个状态多余 ...

  7. modSecurity规则学习(七)——防止SQL注入

    1.数字型SQL注入 /opt/waf/owasp-modsecurity-crs/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf"] [lin ...

  8. AtCoder Beginner Contest 067 D - Fennec VS. Snuke

    D - Fennec VS. Snuke Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Statement F ...

  9. [Chromium文档转载,第003章]Proposal: Mojo Synchronous Methods

    Proposal: Mojo Synchronous Methods yzshen@chromium.org 02/02/2016 Overview Currently there are quite ...

  10. XML解析——SAX解析以及更方便的解析工具(JDOM、DOM4J)

    XML主要用于数据交换,HTML则用于显示. 相对于DOM的树形解析,SAX采用的是顺序解析,这种解析方法可以快速地读取XML数据的方式. SAX主要事件: No. 方法 类型 描述 1 public ...