Hi, I have a server application running in karaf and I have problems to combine transactions defined in spring/camel and code having @Transactional annotation.
In my blueprint.xml I have defined something like this: <reference id="jtaTransactionManager" interface="javax.transaction.TransactionManager" /> <reference id="userTransaction" interface="javax.transaction.UserTransaction" /> <bean id="transactionManager" class="org.springframework.transaction.jta.JtaTransactionManager"> <argument ref="jtaTransactionManager" /> <argument ref="userTransaction" /> </bean> <bean id="PROPAGATION_REQUIRES_NEW" class="org.apache.camel.spring.spi.SpringTransactionPolicy"> <property name="transactionManager" ref="transactionManager" /> <property name="propagationBehaviorName" value="PROPAGATION_REQUIRES_NEW" /> </bean> So I start a new transaction by using PROPAGATION_REQUIRES_NEW in a camel route. The camel route leads to a WebService endpoint. Anywhere in the underlying code where I use @Transactional and get a EntityManager injected I can see that the transaction is handled by a coordination from aries-jpa and gets committed by the uppermost @Transactional annotation. But I want that the underlying code uses the transaction created by the PROPAGATION_REQUIRES_NEW in the camel route so I am maybe able to rollback the transaction inside the camel route. How to achieve this? Do I have to use a TransactionManager from aries-jpa instead? Thanks in advance, Christian