WS-I 基本概要 1.1 版
XML Web 服务是使用公共规范(XML、SOAP 等)开发的,以便最大程度地实现与不同平台上 Web 服务的互操作,尽管如此,由于在这些规范之间存在多义性,并且供应商实现方式之间存在差异,因此仍会减慢开发具备广泛互操作能力的 Web 服务的速度。
WS-I 基本概要 1.1 版规范由多家供应商共同拟定,目的是通过消除规范中的多义性来加速真正实现了互操作的 Web 服务的部署,明确描述对兼容 Web 服务的限制,并且从大量可供选择的 Web 服务设置中选择一组 Web 服务设置。有关详细信息,请参见 WS-I 基本概要。
为生成符合 BP 的 Web 服务,需执行两个步骤。首先,定义符合该基本概要的服务。接下来,实现该服务,以便它在运行时支持该基本概要。例如,SOAP 扩展可能会在运行时修改该协定并违反遵从性。
为了帮助开发人员确保其服务符合 BP,WS-I 提供了大量测试工具,从 http://www.ws-i.org/deliverables/workinggroup.aspx?wg=testingtools 可以获得这些测试工具。
声明符合 BP 的 SOAP 1.1 端口
在 ASP.NET 2.0 中,您可以通过将 WebServiceBindingAttribute 特性应用于 Web 服务类并将 ConformsTo 属性设置为 BasicProfile1_1,指示 ASP.NET 运行库帮助为服务所公开的 SOAP 1.1 端口强制实现 BP 遵从性。(如果您制订的协定不符合 BP,在运行时将引发异常。)然后,只要您实现了符合 WS-I 基本概要的服务,该服务就是符合 BP 的,并且可在任何平台上由符合 BP 的客户端使用。
注意
默认情况下,使用 .NET Framework 2.0 版通过 Visual Studio 创建的新 Web 服务是符合 BP 的。
要在描述符合 BP 的服务的 Web 服务描述语言 (WSDL) 文件中发布 BP 遵从性声明,请将 EmitConformanceClaims 属性设置为 true。通过将 EmitConformanceClaims 属性设置为 false,可以在 WSDL 中取消发布针对 Web 服务的 BP 遵从性,但 SOAP 端口仍符合 BP。(WS-I 基本概要 1.1 规范并不要求必须在 WSDL 中发布遵从性声明。)
要查看符合 WS-I 基本概要 1.1 规范的 Web 服务的示例,请参见 ASP.NET Web 服务快速入门中的 BPConformance 快速入门示例。
生成符合 BP 的 Web 服务
创建和使用符合 BP 的 SOAP 1.1 端口只是生成符合 BP 的服务的一个环节。因为 WS-I 基本概要 1.1 规范旨在为提供更高的互操作性而限制了 Web 服务规范中的灵活性,所以,在运行时不生成违反 WS-I 基本概要 1.1 规范的服务。例如,服务不得使用 RPC/编码样式消息。有关详细列表,请参见 WS-I 基本概要规范。
如果在使用 ASP.NET 2.0 开发 Web 服务时采取下面的操作,也会违反 BP 遵从性。
使用 DataSet。
在 SOAP 信封中使用 xml:lang 属性。
在定义可序列化类型时未能使用新的 Order 属性。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
图形数据库 语义数据处理和WS-I
有时候,新的就是旧的,同样的,旧的就是新的。最近的一些事实越发证明了这一点。就从James Denman的图形数据库那篇文章说起吧。
-
WS-I闭关 这对WS-*意味着什么?
互操作性真的通过WS-I组织由WS-*系列规范所实现,并通过由今天所开发出来的规范和标准得以改善了吗?还是真正的互操作性的挑战转移到别处,仍然有待解决?
-
WS-I功成身退
Web服务协同组织(WS-I) 已经完成了一些基本的文件。同时宣布结束组织的工作。WS-I资产、运营和任务的管理工作见转移给OASIS标准组织。
-
沸腾的SOA:如何形成清晰的概念?
虽然IBM等巨头近年来一直努力的进行SOA扫盲教育,但对于一部分企业的IT人员来说,SOA在他们的脑海中似乎仍然没有清晰的概念。