[ https://issues.apache.org/jira/browse/SYNAPSE-480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12647998#action_12647998 ]
Asankha C. Perera commented on SYNAPSE-480: ------------------------------------------- The most common case would be a transactional receipt and processing of a message, where a rollback should imply the message being returned to the source for a subsequent retry. A JTA transaction is only useful when more than one resource is involved, and the most common being JMS and DB's. Thus, the value of a transactional sequence (which is a list) would be reduced, since this implies that the message was not received transactionally - e.g. maybe over http/s. Thus the proposed mediator seems like a good first step, as it allows one to realize the benefits of transactionality, without burning it too much into the core. > 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: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]