[ 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