配置服务提供程序以共享其策略配置
WebSphere® Application Server 服务提供程序可以在所发布的 Web Service 描述语言 (WSDL) 中,或者通过使用 HTTP GET 请求或 Web Service 元数据交换 (WS-MetadataExchange) GetMetadata 请求获取的 WSDL 中,共享其策略配置。
关于此任务
您可以通过以下方法使 Java™ API for XML-Based Web Services (JAX-WS) 服务端点的策略配置可共享:
- 将服务提供程序的策略配置包括在 WSDL 中。这样,此 WSDL 便可供发布,您也可以使用 HTTP GET 请求来获取此 WSDL。
- 启用 Web Service 元数据交换 (WS-MetadataExchange) 协议,以便将服务提供程序的策略配置包括在 WSDL 中并使其可供 WS-MetadataExchange GetMetadata 请求使用。使用 WS-MetadataExchange 协议的优点是,通过使用适当的系统策略集,可以对 WS-MetadataExchange GetMetadata 请求应用消息级安全性。
如果服务提供者应用程序使用多重部件 WSDL,那么所有的 WSDL 必须本地至 Web Service 的应用程序。有关多重部件 WSDL 的更多信息,请参阅关于 WSDL 的主题。
Rational® Application Developer 工具将服务提供程序配置为共享其策略配置。
本主题描述如何使用管理控制台将服务提供程序配置为共享其策略配置。您还可以使用 wsadmin 命令或
过程
- 从管理控制台的导航窗格,单击 。
- 在要共享的提供程序策略所连接的应用程序或服务所在的行中,单击“策略共享”列中的链接。 此链接是已启用或已禁用。 此时将显示策略共享窗格。
- 要将该服务提供程序的策略配置包括在其 WSDL 中,以便可以发布该配置或者通过 HTTP GET 请求来获取该配置,请选择导出的 WSDL。
- 要启用 WS-MetadataExchange 并使服务提供程序的策略配置可供 WS-MetadataExchange GetMetada 请求使用,请选择 WS-MetadataExchange 请求。
- 可选: 如果您选择 WS-MetadataExchange 请求并且要使用消息级安全性,请选中将系统策略集连接到 WS-MetadataExchange,然后从下拉列表中选择合适的策略集和绑定。 请参阅配置 WS-MetadataExchange 请求的安全性。
- 单击确定并保存对主配置所作的更改。
结果
如果无法共享策略配置,那么将在服务提供程序错误日志中写入用于描述问题的错误,并且以下策略将连接到该服务提供程序的 WSDL:
<wsp:Policy>
<wsp:ExactlyOne>
</wsp:ExactlyOne>
</wsp:Policy>
此策略通知客户机,没有用于该服务的可接受策略配置。WSDL 的其他方面不受影响。服务提供程序可能会由于其策略配置无法以标准的 WS-PolicyAttachments 格式表达而无法共享该配置。其中一个原因可能是,您为特定连接点定义了多个不兼容的策略。另一个原因可能是,没有足够的绑定信息,因此无法生成标准的策略。策略配置可能包括引导策略(例如,用于访问 WS-Trust 服务的策略),因此引导策略也必须以 WS-PolicyAttachments 格式表达。