+

Search Tips   |   Advanced Search

Set a service provider to share its policy configuration


A WAS service provider can share its policy configuration in published Web Services Description Language (WSDL), or WSDL that is obtained using an HTTP Get request or the Web Services Metadata Exchange (WS-MetadataExchange) GetMetadata request.

Overview

we have developed a Web services service provider that contains all the necessary artifacts and deployed the Web services application into the appserver instance. You have attached the policy sets and managed the associated bindings.

For a list of WS-Policy assertion specifications and WS-Policy domains that are supported, see Learn about WS-Policy.

We can make the policy configuration of a JAX-WS service endpoint available to share in two ways:

The policy configuration in the WSDL is in the standard WS-PolicyAttachments format. Any WS-Policy attachments that were in the WSDL previously are removed. Note that policy configuration information becomes available in the WSDL to publish, but it is not available if we just view the WSDL document using the admin console. Also, policy configuration information is not available in WSDL that is published remotely by using an administrative agent.

If the service provider application uses multipart WSDL, all the WSDL must be local to the Web service application.

See about multipart WSDL, see the topic about WSDL.

You must configure a service provider to share its policy configuration because by default the policy configuration is not available in its WSDL. Configure the service provider to include the policy configuration in its WSDL, to use WS-MetadataExchange so that the policy configuration is available, or both. This topic describes how to configure a service provider to share its policy configuration using the admin console. We can also configure a service provider to share its policy configuration by using wsadmin commands or Rational Application Developer tools.

Configure a service provider to share its policy configuration at application or service level. The policy configuration that is represented by the policy sets attached to any lower levels will also be shared. Policy sets that are attached at lower levels override the policy set configuration attached at a higher level.

 

  1. From the navigation pane of the admin console, click Applications > Application Types > WebSphere enterprise apps > service_provider_application_instance > [Web services properties] Service provider policy sets and bindings.

  2. In the row for the application or service where the provider policy to share is attached, click the link in the Policy sharing column. The link is either Enabled or Disabled.

    The Policy Sharing pane is displayed.

  3. To include the policy configuration of the service provider in its WSDL so that it can be either published or obtained using an HTTP Get request, select Exported WSDL.

  4. To enable WS-MetadataExchange and make the policy configuration of the service provider available to a WS-MetadataExchange GetMetada request, select WS-MetadataExchange request.

  5. If we select WS-MetadataExchange request and you want to use message-level security, select Attach a system policy set to the WS-MetadataExchange, then select a suitable policy set and binding from the drop-down lists. See Set security for a WS-MetadataExchange request.

  6. Click OK and save the changes to the master configuration.

 

Results

The policy configuration of the service provider is available to its clients. The WSDL of the service provider contains the current policy configuration in WS-PolicyAttachments format so that it is available to other clients, service registries, or services that support the Web Services Policy (WS-Policy) specification. The link in the Policy Sharing column on the Service provider policy sets and bindings pane changes to Enabled.If the policy configuration cannot be shared, an error that describes the problem is written to the service provider error log, and the following policy is attached to the WSDL of the service provider:

<wsp:Policy>
<wsp:ExactlyOne>
</wsp:ExactlyOne>
</wsp:Policy>
This policy notifies the client that there is no acceptable policy configuration for the service. Other aspects of the WSDL are unaffected.

A service provider might not be able to share its policy configuration because the configuration cannot be expressed in the standard WS-PolicyAttachments format. One reason might be because multiple incompatible policies are defined for a particular attach point. Another reason might be because there is not enough binding information to generate the standard policy. Policy configuration might include bootstrap policy, for example, the policy to access a WS-Trust service, so the bootstrap policy must also be expressed in WS-PolicyAttachments format.


Set a service provider to share its policy configuration using wsadmin
Policy sharing settings

 

Related concepts


Web service providers and policy configuration sharing
WSDL

 

Related tasks


Learn about WS-Policy
Set the client.policy using a service provider policy
Publishing WSDL files
Deploy Web services applications onto appservers
Manage policy sets and bindings for service providers at the application level
View WSDL document
Set security for a WS-MetadataExchange request
Use WS-Policy to exchange policies in a standard format