4.使用 WSDL 指定的标准 SOAP 消息格式
转自: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 消息格式的更多相关文章
- (七)发送、接收SOAP消息(以HttpClient方式)(2)
一.为什么要用soap 原本我们使用web服务都是根据wsdl生成客户端(生成一堆java文件)然后再调用,本章节讲解如何用soap消息来替代这种方式. 二.SOAP消息格式 SOAP(简单对象访问协 ...
- (六)发送、接收SOAP消息(1)
一.为什么要用soap 原本我们使用web服务都是根据wsdl生成客户端(生成一堆java文件)然后再调用,本章节讲解如何用soap消息来替代这种方式. 二.SOAP消息格式 SOAP(简单对象访问协 ...
- 如何在WCF中用TcpTrace工具查看发送和接收的SOAP消息
WCF对消息加密(只对消息加密,不考虑Authorize)其实很简单,只要在server和client端的binding加入security mode为Message(还有Transport, Tra ...
- SOAP消息的传递
上一篇说了SOAP消息的创建,那么创建好了的SOAP消息要怎么发送给服务端呢? public class SoapTest { private String wsdlUri = "http: ...
- JAX-WS创建和处理SOAP消息
JAX-WS规范是一组XML web services的JAVA API,在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP,在使用JAX-WS过程中,开发者不需要编写任何生成 ...
- webservice05#soap消息
1, SOAPMessage结构图 2, SOAP消息的创建 1>前面的一个简单WebService 服务 package com.yangw.soap.service; import jav ...
- webservice系统学习笔记5-手动构建/发送/解析SOAP消息
手动拼接SOAP消息调用webservice SOAP消息的组成: 1.创建需要发送的SOAP消息的XML(add方法为例子) /** * 创建访问add方法的SOAP消息的xml */ @Test ...
- soap消息机制 讲解
SOAP(Simple Object Access Protocol,简单对象访问协议)作为一种信息交互协议在分布式应用中非常广泛,如WebService.在使用.Net开发WebService时候, ...
- Web Service学习之八:Soap消息详解
一.区别概念 WSDL是网络服务描述语言,是XML文档:它包含一系列描述某个web service的定义或者说是规则.尤其是定义了传输Sope消息的结构 Soap:简单对象访问协议,是交换数据的一种协 ...
随机推荐
- 函数指针的转换 & C的注意点
再让我们看看<signal.h>中声明的signal函数void (*signal(int, void(*)(int)))(int)首先,用typedef简化,typedef void ( ...
- Codeforces 327A-Flipping Game(暴力枚举)
A. Flipping Game time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- MountService整理
刚毕业时第一个接触的模块就是Vold.这个模块尽管小,但深入下去是有一定难度的. 花了点时间又一次整理了下这一块的逻辑,也当温习下这个模块. watermark/2/text/aHR0cDovL2Js ...
- centos7 出现please make your choice from 1 to enter..
忘了截图了 刚出现的~~ 输入1 回车 输入q 回车 最后回车 便可以正常启动
- js笔记3
1字符串 replace("","")替换,前面为要替换什么,后面为替换的内容只能替换一个 2DOM 时间三要素 事件源 谁身上发生的行为 事件 单机 双击 事 ...
- Js 中的i++ 和 ++i 的区别
首先碰见 i++ 和 ++i 会一脸蒙蔽 感觉没什么区别,都是相加 , 但是 输出的值是不同!!! 来奉上代码来进行比较 var i = 1; var a = i++; //a = 1; 此时i ...
- 【Linux下权限控制之chmod与chown命令】
chmod 用于配置文件/目录权限 命名格式:chmod [选项] 文件/目录名 . 权限类别: r 读取 可用数字4表示 w 写入 可用数字2表示 x 执行 可用数字1表示 . 归属类别: u 属主 ...
- iscsi共享存储的简单配置和应用
1.环境介绍 SCSI(Small Computer System Interface)是块数据传输协议,在存储行业广泛应用,是存储设备最基本的标准协议.从根本上说,iSCSI协议是一种利用IP网络来 ...
- 【2017 Multi-University Training Contest - Team 1 1002】Balala Power!
[Link]:http://acm.hdu.edu.cn/showproblem.php?pid=6034 [Description] 给你n个字符串; 每个字符串都仅由小写字母组成; 然后,你可以把 ...
- Linux监控(OS,MySQL,Tomcat,Apache)
关于逐步脱离开发岗位的意见,老大已经批准了,接下来我的主要工作就是"运维+数据库管理".感谢杰民兄和小马哥能接受我的骚扰.接下来还会去骚扰他们,同一时候也会去骚扰董大爷,小刚总,心 ...