You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Andreas Veithen (JIRA)" <ji...@apache.org> on 2008/11/16 17:07:57 UTC

[jira] Commented: (SYNAPSE-480) Transaction mediator for synapse

    [ https://issues.apache.org/jira/browse/SYNAPSE-480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12647991#action_12647991 ] 

Andreas Veithen commented on SYNAPSE-480:
-----------------------------------------

My feeling is that for many use cases this mediator is too low level and that (in addition) we should have a ListMediator that executes a sequence of mediators in a transaction and that handled commit/rollback automatically. It could also be interesting to have transaction support at the ProxyService level so that the user can easily specify that the whole flow (in sequence & out sequence) is executed in a transaction. Again in that case ProxyService should take care of commit/rollback automatically.

> Transaction mediator for synapse
> --------------------------------
>
>                 Key: SYNAPSE-480
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-480
>             Project: Synapse
>          Issue Type: New Feature
>          Components: Core
>    Affects Versions: FUTURE
>            Reporter: irantha suwandarathna
>             Fix For: FUTURE
>
>         Attachments: tx_mediator.patch
>
>
> New synapse mediator to manipulate JTA transactions. 
>  
> syanpse.xml configuration for new mediator:
> <transaction action="new|use-existing-or-new|fault-if-no-tx|commit|rollback|suspend|resume"/>
>  
> Meaning of action attribute values are explained below:
> new : create a new jta transaction. generate a fault if a transaction already exist.
> use-existing-or-new : create a new jta transaction. do nothing if a transaction exist.
> fault-if-no-tx : generate a fault if no transaction exist.  do nothing if a transaction exist.
> commit : commit transaction. generate a fault if no transaction exist.
> rollback: rollback transaction. generate a fault if no transaction exist.
> suspend: suspend transaction. generate a fault if no transaction exist.
> resume: resume transaction. generate a fault if no transaction exist.
>  
> There will be a new transaction configuration section in axis2.xml to define UserTransaction (used to create a new transaction) and TransactionManager (need for suspend and resume actions ) JNDI parameters.
> newly created usertransaction is assigned to axis2 message context property named BaseConstants.USER_TRANSACTION and newly created transaction manager is assigned to axis2 message context property named BaseConstants.TRANSACTION_MANAGER
>  
> Same message context property is used by JMS transport when creating a new usertransaction. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org