SOAP

SOAP(以前称为“简单对象访问协议”)是用于在分散的分布式环境中交换信息的轻量级协议。SOAP 消息是从发送方到接收方的信息传输。多个 SOAP 消息可以组合起来执行请求/响应模式。

SOAP 与传输无关,但最常通过 HTTP 进行传递,以使用现有的因特网基础结构来运行。SOAP 通过定义用于路由消息的消息路径来启用绑定和被发现 Web Service 的使用。SOAP 用于对 Web Service 查询 UDDI。

Java™ API for XML Web Service (JAX-WS) 标准引入了支持 SOAP 1.1 和 SOAP 1.2 的能力。安装 WebSphere® Application Server V7.0 及更高版本或 WebSphere Application Server Liberty 概要文件之后,工作台支持 SOAP 1.1 和 SOAP 1.2。

SOAP 1.1

SOAP 1.1 是独立于协议的传输,可与各种协议组合使用。在用 WebSphere Application Server 开发和实现的 Web Service 中,SOAP 会用在 HTTP、HTTP 扩展框架和 Java 消息服务 (JMS) 的组合中。SOAP 也独立于操作系统,不会捆绑到任何编程语言或组件技术。只要客户机可以发出 XML 消息,使用哪种技术来实现该客户机就无关紧要。同样,该服务可在任何语言中实现,只要该服务可以处理 SOAP 消息。另外,服务器和客户机端可以位于任何合适的平台上。

SOAP 是基于 XML 的协议,用于定义每一条消息的三个部分:

SOAP 支持两种不同的通信样式:

在分布式计算环境中,编码样式定义如何在特定协议格式之间转换应用程序中定义的数据值。转换过程称为序列化和反序列化。SOAP 1.1 规范定义 SOAP 编码样式:

WSDL 定义了“文字 XML”编码样式:

SOAP 1.2

SOAP 1.2 规范也是一个万维网联盟 (W3C) 推荐项,并且包括在此工作台中的工具遵循 SOAP 1.2 中概述的标准。 SOAP 1.2 规范包括三个部分和一些断言以及一个测试集合:

SOAP 1.2 更明确地定义了 SOAP 处理模型,该模型中移除了许多在缺少 Web Service 互操作性 (WS-I) 概要文件的情况下有时会导致互操作性问题的不确定性。SOAP 1.2 应可降低不同供应商之间 SOAP 1.2 实现发生互操作性问题的机率。

SOAP 1.2 规范中一些较重要的更改包括:
  • 现在只要供应商遵从 SOAP 1.2 中定义的绑定框架,就能够正式定义 HTTP 协议以外的其他传输协议。虽然 HTTP 普遍存在,但它没有其他传输协议(如 TCP/IP 和 MQ 等等)可靠。
  • SOAP 1.2 基于 XML 信息集(XML 信息集)。信息集提供了一种方法来使用 XSD 模式描述 XML 文档,但并不一定使用 XML 1.0 序列化来序列化该文档。SOAP 1.1 基于 XML 1.0 序列化。信息集将使得使用其他序列化格式(例如二进制协议格式)更容易。可以使用二进制协议来将消息压缩成某一可能不需要某些详细标记信息的压缩度更高的格式。

SOAP 的其他相关信息

有关 SOAP 1.1 与 1.2 之间差异的更详细的说明,请参阅:SOAP 版本差异

指示主题类型的图标 概念主题
信息中心的条款和条件 | 反馈

时间戳记图标 最近一次更新时间: 2014 年 4 月 17 日

文件名:csoap.html