使用寻址注释为 JAX-WS 应用程序启用 Web Service 寻址支持

对于 JAX-WS 应用程序,您可以通过在代码中使用寻址注释,在服务应用程序的开发期间启用 WS-Addressing 支持。您还可以在使用插入的 Web Service 代理引用的客户机应用程序中使用此方法。

关于此任务

在您的服务代码中使用以下某个寻址注释:
  • Addressing - 如果您要使用 2005/08 WS-Addressing 规范,请使用此注释。
  • SubmissionAddressing - 如果您要使用 2004/08 WS-Addressing 规范,请使用此注释。
在客户机上,仅使用寻址注释;不支持 SubmissionAddressing 注释。必须指定寻址注释以及 WebServiceRef 注释。WebServiceRef 注释指定客户机容器插入的 Web Service 代理的引用。

注释设置将覆盖 WSDL 文档中的设置。如果手动创建 WSDL 文档,而不是根据代码生成该文档,那么注释设置可能与 WSDL 设置不同。

最多为每个注释可指定三个可选参数:
表 1. 寻址注释的参数. 该表列出了各个参数以及其可能的值和每个参数的描述。
参数名称 可能的值 描述
已启用

true(缺省值)
false

是否启用 WS-Addressing 支持。
required

true
false(缺省值)

是否需要 WS-Addressing 头。
responses

Responses.All(缺省值)
Responses.ANONYMOUS
Responses.NON_ANONYMOUS

使用同步还是异步消息交换模式。指定 Responses.ANONYMOUS 以通过同步消息模式发送消息;使用 Responses.NON_ANONYMOUS 以通过异步消息交换模式发送消息。
注: 不支持对 SubmissionAddressing 注释使用此参数。
注: 只能将 Addressing 注释与 SOAP(1.1 或 1.2)over HTTP 绑定配合使用。如果将类与其他绑定(例如,XML over HTTP)一起使用,那么将在客户机上抛出异常,并且在服务器上,Web Service 将无法部署。

过程

结果

如果在服务应用程序中使用寻址注释,那么服务器会处理符合入站 SOAP 消息的相关规范的任何 WS-Addressing 头。如果您指定需要 WS-Addressing,并且入站 SOAP 消息不包含任何 WS-Addressing 头或包含的 WS-Addressing 头不符合注释指示的规范,那么服务器将返回故障消息。例如,如果客户机发送包含 2004/08 WS-Addressing 头的消息并且服务器需要 2005/08 头,那么服务器将返回故障消息。

如果使用寻址注释并根据代码生成了 WSDL 文档,那么将在 WSDL 文档中创建 UsingAddressing 元素和 WS-Policy 断言。使用此 WSDL 文档的客户机将在其消息中包含 WS-Addressing 信息。当前 WSDL 生成工具不理解 SubmissionAddressing 注释。但是,WSDL 文档不区分 2005/08 规范和 2004/08 规范,所以如果您要从包含 SubmissionAddressing 注释的代码生成 WSDL 文档,请将 AddressingSubmissionAddressing 注释一起使用。

如果您指定响应属性,将使用相应的消息交换模式。


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=twbs_wsa_dep_jaxws_annot
文件名:twbs_wsa_dep_jaxws_annot.html