Transactions in Oracle Mediator Transactions in BPEL

Completing ABCS Development 13-29 In a SOA-based integration, long-running business transactions often involve incompatible trust domains, asynchrony, and periods of inactivity, which present challenges to traditional ACID-style transaction processing. You may need to predefine the transaction boundaries based on technical or business criteria. PIP designersarchitects should divide the whole transaction into parts by setting transaction boundaries using JMS interface at logical points. Non-retryable application services must have corresponding compensatory services. ABCS invoking non-retryable application services should invoke compensatory services in case of roll-back. Application services implemented using JCA adapters can leverage session management to facilitate transaction coordination.

13.6.2 Transactions in Oracle Mediator

If a transaction is present, Oracle Mediator participates in that existing transaction. If a transaction is not present, Oracle Mediator starts a transaction. In the case of sequential routing rules, all rules are executed in the same transaction and, if an error occurs, a rollback is issued.

13.6.3 Transactions in BPEL

The BPEL component, by default, creates a new transaction on the basis of a request. That is, when a BPEL process is invoked, a new transaction begins by default. If a transaction already exists, then it is suspended and a new one created. To chain an execution into a single global transaction, you must set the transaction flag on the provider process callee BPEL component.

13.6.3.1 Impact of BPEL Activities on Transaction Scope

BPEL engine ends its local transaction when it reaches the end of flow or hits a breakpoint activity, for example, receive, onMessage, onWait, and Alarm. Transaction design considerations are also governed by: ■ Invocation patterns employed across the AIA integration ABCS -- EBS - ABCS ■ Technology pattern: BPEL -- MEDIATOR-BPEL ABCS - EBS - EBF - EBS -- ABCS ■ Technology Pattern: BPEL - MEDIATOR- BPEL - MEDIATOR- BPEL Based on the transaction semantics in FMW, you must design and configure transactions across ABCS, EBS and Enterprise Business Flows. ■ Participating applications Participating applications should be able to support transactions using their application services. However, the reality is that many application services are able to do this, so compensatory services are needed in case of rollback orchestrated by AIA layer. Design integration logic and transaction boundaries in the AIA layer to account specifically for the peculiarities of the participating application services, SCA Composite transaction semantics, and business requirements. 13-30 Developers Guide for Oracle Application Integration Architecture Foundation Pack

13.6.4 Developing ABCS to Participate in a Global Transaction