uCosminexus Service Platform, Overview

[Contents][Glossary][Index][Back][Next]

2.4.4 Transactions when using an MDB (WS-R)

For an MDB (WS-R), different transactions are used between the service requester and the HCSC server, and between service adapters and service components.

Organization of this subsection
(1) When sending a message to an asynchronous service adapter
(2) When sending a message to a synchronous service adapter

(1) When sending a message to an asynchronous service adapter

When asynchronous standard reception (MDB (WS-R)) receives a service component invocation request and then sends a message to an asynchronous MDB (WS-R) adapter, the following operations are processed in one transaction: Extraction of the message from the local queue by standard reception (MDB (WS-R)), and transmission of the message to the transmit queue by the service adapter.

If an error occurs, such as an attempt to send a message to the transmit queue fails or the specified service adapter is not running, the transaction rolls back.

When the transaction rolls back, the message extracted by standard reception (MDB (WS-R)) is recovered, and then the service component is invoked after the message is re-extracted from the local queue. The following figure shows a transaction in which the process starting from reception until service component invocation is asynchronous.

Figure 2-37 Transaction in which the process starting from reception until service component invocation is asynchronous

[Figure]

For details about actions to be taken if an error occurs, see 7.7.3 Troubleshooting during the execution of an MDB (WS-R) in the Service Platform Setup and Operation Guide.

(2) When sending a message to a synchronous service adapter

When asynchronous (MDB (WS-R)) standard reception receives a service component invocation request and then sends a message to a synchronous service adapter, the following operations are processed in one transaction: Extraction of the message from the local queue by standard reception (MDB (WS-R)), invocation of the service component by the service adapter, and transmission of the message to the response queue after a response is returned.

If an error occurs, such as an attempt to send a message to the transmit queue or response queue fails or the specified service adapter is not running, the transaction rolls back. When the transaction rolls back, the message extracted by standard reception (MDB (WS-R)) is recovered, and then the service component is invoked after the message is re-extracted from the local queue. The following figure shows a transaction in which the reception process is asynchronous but the service component is synchronous.

Figure 2-38 Transaction in which the reception process is asynchronous but the service component is synchronous

[Figure]

Operations performed if a transaction fails are described below. The numbers correspond to the numbers in the figure.

  1. If an attempt to send a message to the transmit queue fails
    If an attempt to invoke a service component from the service adapter using SOAP fails, the message is returned to the local queue and then re-extracted by standard reception (MDB (WS-R)).
  2. If the specified service adapter is not running
    If the specified service adapter is not running, the message is returned to the local queue and then re-extracted by standard reception (MDB (WS-R)).
  3. If an attempt to send a message to the response queue fails
    If a response is returned and an attempt to send a message to the response queue fails, the message is returned to the local queue and then re-extracted by standard reception (MDB (WS-R)).

For details about actions to be taken if an error occurs, see 7.7.3 Troubleshooting during the execution of an MDB (WS-R) in the Service Platform Setup and Operation Guide.

A business process operates by using a BMT (Bean Managed Transaction). The business process itself is controlled by using a new transaction. When you invoke a business process, each service component invocation process defined in the invoke service activity of the business process is controlled by using a new transaction. The following figure shows the transactions passing through the business process.

Figure 2-39 Transactions passing through the business process

[Figure]

For persistent business processes, see the description of the transactions during execution of business processes in 3.4 Transaction of a business process.