camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrey Utkin (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CAMEL-4240) Unable to use XA JMS trabsaction on WebLogic
Date Thu, 22 Sep 2011 07:03:28 GMT

     [ https://issues.apache.org/jira/browse/CAMEL-4240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andrey Utkin updated CAMEL-4240:
--------------------------------

    Attachment: camel-jms-r1173278-CAMEL-4240-light.diff
                camel-jms-r1173278-CAMEL-4240.diff

Hi Claus,
I attach two versions of patch for this issue. 

First - camel-jms-r1173278-CAMEL-4240.diff - contains significant changes in transaction settings
behavior.

Main point is to have identical meaning of 'transactionManager' and 'sessionTransacted' properties
between JMS component and Spring MessageListenerContainer.

1. If 'transacted'==false && tm==null && lazyCreateTransactionManager==false,
then do nothing with transaction in MessageListenerContainer.
2. If 'transacted'==false && tm==null && lazyCreateTransactionManager==true,
then create and setup own tm (imho it is not good idea).
3. If 'transacted'==false && tm!=null, then setup only tm in MessageListenerContainer.
4. If 'transacted'==true && tm==null && lazyCreateTransactionManager==false,
then setup only sessionTransacted in MessageListenerContainer.
5. If 'transacted'==true && tm==null && lazyCreateTransactionManager==true,
then set sessionTransacted, create and setup own tm.
6. If 'transacted'==true && tm!=null, then set sessionTransacted and tm in MessageListenerContainer.

Case 3 corresponds to typical J2EE configuration with XA tm. 

But I would like to do more tests with WebLogic and ActiveMQ.

===
Second patch version -  "light" - camel-jms-r1173278-CAMEL-4240-light.diff.
It only allow setup tm without 'transacted' property. It is almost identical to current implementation
and safer.


> Unable to use XA JMS trabsaction on WebLogic
> --------------------------------------------
>
>                 Key: CAMEL-4240
>                 URL: https://issues.apache.org/jira/browse/CAMEL-4240
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-jms
>            Reporter: Andrey Utkin
>             Fix For: 2.9.0
>
>         Attachments: camel-jms-r1173278-CAMEL-4240-light.diff, camel-jms-r1173278-CAMEL-4240.diff
>
>
> There is problem with camel-jms component deployed on WebLogic 10.3.X and XA connection
factory. 
> As spring developers suggests, if we use XA transaction on WebLogic we must set SessionTransacted
to false and specify transactionManager. See http://ourcraft.wordpress.com/2008/10/22/the-mysteriously-necessary-sessiontransactedtrue/
comment #9 by Juergen Hoeller.
> But camel-jms setup transactionManager for MessageListener only when "transacted" property
is true. So, it is not possible to use XA transactions with WebLogic JMS.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message