Web Service 寻址支持
该产品中的 Web Service 寻址 (WS-Addressing) 支持为使用万维网联盟 (W3C) WS-Addressing 规范的 Web Service 提供了环境。此系列的规范提供了与传输无关的机制对 Web Service 进行寻址以及使端到端寻址更为方便。
- 需要使用 WS-Addressing 应用程序编程接口 (API) 来创建应用程序中的端点引用,然后将这些引用用于 Web Service 资源实例的 Web Service 开发者。
- 需要使用 IBM 专有 WS-Addressing 系统编程接口 (SPI) 来执行更高级 WS-Addressing 操作(例如对 Web Service 消息指定消息寻址属性)的系统程序员。
- 正在为 JAX-WS 应用程序配置策略集的管理员。
面向开发者的 WS-Addressing 支持由两组编程接口组成:JAX-WS 标准接口以及 IBM 专有的 WS-Addressing 规范实现。
JAX-WS WS-Addressing 支持的特征
本产品支持 JAX-WS WS-Addressing API,您可以使用此 API 来执行基本的寻址功能,例如创建端点引用、启用 WS-Addressing 支持以及指定与 Web Service 的 WSDL 操作相关联的操作 URI。如果您要执行简单 WS-Addressing 功能并创建可移植的 JAX-WS 应用程序,请使用这些 API。
- WS-Addressing 端点引用的 Java™ 表示。
- 可以为应用程序端点创建 Java 端点引用实例,并可以在运行时为同一应用程序中的其他端点创建这些实例。不必指定端点引用的 URI。
- 通过指定端点引用的 URI,可以为其他应用程序中的端点创建 Java 端点引用实例。
- 在服务上,您可以使用注释来指定是否启用 WS-Addressing 支持、此支持是否必需以及要使用哪个消息交换模式(同步和/或异步)。
- 在客户机中,可以使用功能部件来指定是否启用 WS-Addressing 支持以及此支持是否必需。
- 通过使用端点引用,可以配置客户机代理或 Dispatch 对象。
- 对表示 Web Service 资源 (WS-Resource) 实例的端点引用的 Java 支持。
- 在创建引用参数时,可以使引用参数与端点引用相关联,从而使其与特定资源实例相关。
- 在目标 Web Service 中,可以抽取入局消息的引用参数,以便 Web Service 可以将消息传递给适当的 WS-Resource 实例。
- 可在 JAX-WS 2.2 规范中的端点引用的元数据中指定其他绑定信息。此功能已添加至 WebSphere Application Server V7 中,但因为它未包含在 JAX-WS 2.1 规范中,所以与不支持端点引用中的附加元数据的非 WebSphere Application Server 服务器互操作时可能会遇到不兼容问题。JAX-WS 2.2 支持在端点引用中使用 WSDL 元数据,所以应用程序将与此规范的其他实现兼容。有关进一步信息,请参阅“Web Service 寻址概述”主题。
- 可通过将 WS-Policy 断言添加至 WSDL 文档在客户机或服务上启用并配置 WS-Addressing。WebSphere Application Server 将处理 WSDL 文档的 WS-Policy 部分中包含的 WS-Addressing 信息并在该应用程序的配置中使用此信息。有关进一步信息,请参阅“使用 WS-Policy 对 JAX-WS 应用程序启用 Web Service 寻址支持”主题。
- 可使用寻址注释或 AddressingFeature 来指定 Web Service 应用程序是需要同步还是异步消息交换模式。在代码中的寻址注释或 AddressingFeature 类中使用 responses 参数。有关进一步信息,请参阅“使用寻址注释对 JAX-WS 应用程序启用 Web Service 寻址支持”主题和“使用寻址功能对 JAX-WS 应用程序启用 Web Service 寻址支持”主题。
- 可使用部署描述符来配置 WS-Addressing。将 <addressing> 元素和可选子元素添加到应用程序的部署描述符文件。有关进一步信息,请参阅“使用部署描述符对 JAX-WS 应用程序启用 Web Service 寻址支持”主题。
- 可通过 WSDL 文档生成代码,并且 WebSphere Application Server 会将 @Action 和 @FaultAction 注释自动插入至生成的 Java 代码。有关进一步信息,请参阅“Web Service 寻址注释”主题。
IBM 专有 WS-Addressing 支持特性
本产品提供了 WS-Addressing 规范的 IBM 专有实现,您可以将此实现与 JAX-RPC 应用程序以及 JAX-WS 应用程序配合使用以执行更高级的功能,例如创建表示高度可用对象的端点引用或者直接在 SOAP 头中设置消息寻址属性。如果您要创建使用寻址功能的 JAX-RPC 应用程序,或者要执行不可能通过 JAX-WS API 实现的更高级功能,请使用这些 API 和 SPI。
- 可以根据应用程序的部署环境轻松方便地创建 Java 端点引用实例以表示服务器中的任何端点。不必指定端点引用的 URI。另外,端点引用可以表示高度可用的对象或工作负载受管对象。
- 可以使用 WS-Addressing 端点引用来配置客户机 JAX-WS BindingProvider 请求上下文对象或者 JAX-RPC Stub 或 Call 对象。将来对这些对象进行的调用将对该端点引用所表示的端点执行。这些调用还将自动遵从与该端点引用相关联的 WS-Addressing 规范(名称空间)。
- 端点引用的推理和处理超出应用程序编程级别的能力范围。
- 可以按 WS-Addressing 规范所指定的方式处理端点引用的内容。
- 可以使 WS-Addressing 名称空间与端点引用相关联,从而使规范行为与端点引用相关联。
- WS-Addressing 消息寻址属性的 Java 表示。
- 您可以为出站 Web Service 消息指定 WS-Addressing 消息寻址属性。在目标 Web Service 中,可以从入站 Web Service 消息中抽取消息寻址属性。
- 可以指定出站 WS-Addressing 消息的 WS-Addressing 名称空间,尽管名称空间在大多数情况下将根据目标端点引用自动派生。在目标 Web Service 中,可以获得入局消息的 WS-Addressing 名称空间。
对 WS-Addressing 规范和互操作性的支持
缺省情况下,本产品支持由 http://www.w3.org/2005/08/addressing 名称空间所标识的 W3C WS-Addressing 1.0 核心规范和 SOAP 绑定规范。除非另有声明,否则本文档中描述的 WS-Addressing 语义是指这些规范。
为了进行互操作,此版本的产品还支持其他级别的 WS-Addressing 规范; 特别是,通过 http://schemas.xmlsoap.org/ws/2004/08/addressing 名称空间提供的 WS-Addressing W3C 提案。
对于 JAX-WS 应用程序,本产品支持由 http://www.w3.org/2007/05/addressing/metadata 名称空间标识的 WS-Addressing 元数据规范。此规范取代由 http://www.w3.org/2006/05/addressing/wsdl 名称空间标识的 WS-Addressing Web Service 描述语言 (WSDL) 绑定规范。
- wsaw:UsingAddressing 可扩展性元素(仅在 WSDL Binding 元素中)。此元素所支持的名称空间是 http://www.w3.org/2006/05/addressing/wsdl 名称空间和 http://www.w3.org/2006/02/addressing/wsdl 名称空间(建议不要使用)。
- wsaw:Action 可扩展性元素。此元素所支持的名称空间是 http://www.w3.org/2006/05/addressing/wsdl 名称空间、http://www.w3.org/2006/02/addressing/wsdl 名称空间(建议不要使用)和 http://schemas.xmlsoap.org/ws/2004/08/addressing 名称空间。