Tuesday, September 2, 2014

Oracle SOA BPEL Transaction Quick Chat

Oracle BPEL we can set the transaction explicitly. If transaction is defined then that set of events will be working as unit. If there is failure in any event then that unit will be rolled back.

If we didn’t define the transaction explicitly then all the event will be working as single unit.


The table below summarises the transaction status when performing different activities.

Activity

Transaction Status in BPEL Process

Transaction Status in Target Process or Adapter

ReceiveNew TransactionN/A
Receive with Property “transaction=participate”Use Existing Transaction from CallerN/A
Invoke Synchronous ProcessUse Existing TransactionNew Transaction
Invoke Synchronous Process with Partner Link Property “transaction=participate”Use Existing TransactionUse Existing BPEL Transaction
Invoke Synchronous Process with Partner Link Property “idempotent=false”New TransactionNew Transaction
Invoke Synchronous Process with Partner Link Property “nonBlockingInvoke=true”New TransactionNew Transaction
Invoke Asynchronous ProcessUse Existing TransactionNew Transaction
Invoke Asynchronous Process with Partner Link Property “transaction=participate”Use Existing TransactionNew Transaction
Invoke Synchronous Process with Partner Link Property “idempotent=false”New TransactionNew Transaction
Wait < a couple of secondsUse Existing TransactionN/A
Wait > a couple of secondsNew TransactionN/A
FlowUse Existing Transaction 


No comments:

Post a Comment