Implicit Transactions
With implicit transactions, Integration Server automatically manages both local and XAResource transactions without requiring you to explicitly do anything. That is, the Integration Server starts and completes an implicit transaction with no additional service calls required by the user.
A transaction context, which the transaction manager uses to define a unit of work, starts when one of the following occurs:
An adapter service is encountered during flow service execution. The connection required by the adapter service is registered with the newly created context and used by the adapter service. If another adapter service is encountered, the transaction context is searched to see if the connection is already registered. If the connection is already registered, the adapter service uses this connection. If the connection is not registered, a new connection instance is retrieved and registered with the transaction.
Integration Server uses a transacted JMS connection alias to receive messages from the JMS provider for a JMS trigger. A JMS connection alias is considered to be transacted when it has a transaction type of XA TRANSACTION or LOCAL TRANSACTION.
A built-in JMS service that uses a transacted JMS connection alias to connect to the JMS provider is encountered during flow service execution.
Note that if the top-level flow service invokes another flow, services in the child flow use the same transaction context.
When the top-level flow service completes, the transaction is completed and is either committed or rolled back, depending on the status (success or failure) of the top-level flow service or the JMS trigger service.
A single transaction context can contain any number of XA_TRANSACTION connections but no more than one LOCAL_TRANSACTION connection.
For more information about designing and using flows, see webMethods Service Development Help.