To configure a Web service application to use WS-ReliableMessaging, you attach a policy set that contains a WS-ReliableMessaging policy type. This policy type offers a range of qualities of service: managed persistent, managed non-persistent, or unmanaged non-persistent. Use
command scripts to configure a policy set for reliable messaging.
About this task
To configure a reliable messaging policy set by using the
wsadmin tool, complete the following steps:
Procedure
- Create a policy set. Use the createPolicySet command
to create a new policy set, or the copyPolicySet command
to copy and rename an existing policy set - either one that you have
previously created, or one of the two WS-ReliableMessaging default policy sets.
For more information, see Creating
and copying policy sets by using the wsadmin tool.
- If the policy set does not include both the policy types
WSReliableMessaging and WSAddressing, add these policy types by using
the addPolicyType command as described in Creating and copying policy
sets by using the wsadmin tool. For example:
AdminTask.addPolicyType('[-policySet PolicySet1 -policyType WSReliableMessaging]')
AdminTask.addPolicyType('[-policySet PolicySet1 -policyType WSAddressing]')
These policy types contain the configuration options that support WS-ReliableMessaging. WS-Addressing provides the asynchronous request and reply capabilities for WS-ReliableMessaging, and is also required for WS-ReliableMessaging Version 1.1 synchronous messaging. Notes:
- If you want to use secure conversation and reliable messaging policies in the same policy set, the secure conversation bindings must be configured to require that the reliable messaging headers are signed. The reliable secure profile default policy sets (WS-I RSP and WS-I RSP ND) are specifically designed and configured to use secure conversation and reliable messaging in the same policy set. If you use a copy of one of the reliable secure profile default policy sets (WS-I RSP and WS-I RSP ND), no further configuration of the secure conversation bindings is required. Otherwise, see Configuring WS-SecureConversation to work with WS-ReliableMessaging.
- WS-ReliableMessaging Version 1.1 messaging requires WS-Addressing to be mandatory. If you use a policy set that includes WS-ReliableMessaging and WS-Addressing policies, and the WS-Addressing policy is configured as optional, then WebSphere Application Server overrides the WS-Addressing setting and automatically enables WS-Addressing.
- Configure the WS-ReliableMessaging policy type attributes.
For the WS-ReliableMessaging policy you can configure the version of the WS-ReliableMessaging standard that you want to use, the order in which messages are delivered, and the required quality of service (the reliability level) for message delivery. For
detailed information about these configurable attributes, see WS-ReliableMessaging settings.
Use the
setPolicyType command
to configure these attributes. For example:
AdminTask.setPolicyType('-policySet PolicySet1 -policyType WSReliableMessaging -attributes "[[inOrderDelivery false][specLevel 1.0]
[enabled true][qualityOfService managedPersistent][type WSReliableMessaging]]" -replace'
- If required, configure the WS-Addressing policy
type attributes. For example, the default WS-Addressing policy messaging style is Synchronous and asynchronous, which specifies that there is no restriction on the targeting of response messages. However if you enable policy sharing, the WS-Policy framework determines which style to use, and has a preference for the synchronous request-response pattern. Because the WS-Policy framework takes precedence, reliable messages are sent in a synchronous request-response pattern even if your client invokes the service asynchronously. To enforce asynchronous messaging, set the WS-Addressing policy messaging style to asynchronous only.
Use
the
setPolicyType command to configure these attributes.
For example:
AdminTask.setPolicyType('[-policySet PolicySet1 -policyType WSAddressing
-attributes "[[wsaMode WSA_ASYNC]]"]')
For detailed information
about these configurable attributes, see
WS-Addressing policy settings.
- Save your changes to the master configuration.
To save your configuration changes, enter the following command:
AdminConfig.save()