Using WS-Reliable Messaging

This section discusses how to:

  • Use WS-Reliable Messaging on outbound service operations.

  • Use WS-Reliable Messaging on inbound service operations.

Web Service (WS) Reliable Messaging is a protocol that allows SOAP messages to be delivered reliably between distributed applications in the presence of failures at the software component, system, or network level.

This section discusses using WS-Reliable Messaging on outbound service operations.

Understanding Using WS-Reliable Messaging on Outbound Service Operations

For outbound service operations, PeopleSoft supports WS-Reliable Messaging for asynchronous transactions.

Outbound service operations only support a single content section, which will correspond to a single message with a WS-Reliable Messaging sequence header block on the wire. Multiple contents sections, and therefore multiple runtime sequence messages, are not supported.

When using reliable messaging, message bodies should not be SOAP wrapped in the application server. The gateway builds a SOAP envelope as a by-product of the WS-Reliable Messaging processing.

During a successful invocation, three WS-Reliable Messaging messages are sent out on the wire: a CreateSequence, a message containing the message data as well as a Sequence header block, and a TerminateSequence message. If errors are seen during the transmission of a WS-Reliable Messaging message sequence, the gateway does not auto-recover. Errors are propagated back to the application server and it is the responsibility of the developer to handle further processing.

Enabling WS-Reliable Messaging on Outbound Service Operations

To use WS-Reliable Messaging on outbound transactions, use the HTTP target connector. The HTTP target connector features a gateway–level property called WS-RM. When you set the value of the property to Y, the transaction uses the WS-Reliable Messaging protocol for service operation delivery. Like any other HTTP target connector property, you can override the setting on the service operation routing or by using PeopleCode.

Setting the Value of AcksTo Endpoints in CreateSequence Messages

The integrationGateway.properties file features the following property that enables you to set the value of the AcksTo endpoint in CreateSequence messages:

ig.WSRM.CreateSequenceAcksTo=

The property is located in the WS Reliable Messaging section of the gateway properties file.

Note that the system expects to receive responses on the back channel, so the value you set for this property has no bearing on how the Integration Broker processes WS-Reliable Messaging response messages.

For inbound transactions, Integration Broker accepts the WS-Reliable Messaging protocol when posted into the PeopleSoft Service or HTTP listening connectors. The feature is triggered by the presence of the WS-Reliable Messaging namespace and headers in received SOAP messages.

Note that the WSDL does not reflect the use of WS-Reliable messaging.

For inbound service operations, PeopleSoft supports WS-Reliable Messaging for asynchronous transactions only. If an integration partner sends a synchronous transaction to Integration Broker using WS-Reliable messaging, an error message is returned to the sending system.

All inbound WS-Reliable Messaging communication between the sender and Integration Broker occurs in a single HTTP request-response transaction. The sender transmits a WS-Reliable Messaging message, Integration Broker receives and processes it, and then returns a WS-Reliable Messaging message in the HTTP response. Integration Broker ignores the value of AcksTo in CreateSequence messages.

Unlike outbound transactions using WS-Reliable Messaging, multiple Sequence messages are supported for inbound transactions.