If you're using oracle, just use their xa data source. No? Sent from tablet device. Please excuse typos and brevity. On May 25, 2012 6:23 PM, "dmhatre" <darpan27...@gmail.com> wrote:
> Hi Folks, > I have successfully integrated transaction manager(Atomikos) with Camel > SQL + JMS using SPRING. > But I wish to use JPA instead of sql component. I have hooked atomikos with > DATASOURCE and JMS. > But dont know how to hook atomikos to JPA. I am attaching my source and > stacktrace below. Please help me with this issue. Also FYI I am using > hibernate 4 which works with CAMEL and SPRING *WITHOUT* Atomikos but fails > when used with atomikos saying "/org.hibernate.TransactionException: commit > failed/". > > And the example on Atomikos website use hibernate 3 and i have no clue > how to hook this to CAMEL. > Can some one help me to hook Atomikos + hibernate3 + CAMEL so that I can > atleast degrade my hibernate from 4.0 to 3.0. > > Thanks In Advance. > > ERROR > ####################################### > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > XAResource.start ( > > 3139322E3136382E3136392E32342E746D30303030313030303537:3139322E3136382E3136392E32342E746D31 > , XAResource.TMNOFLAGS ) on resource My_MQSeries_XA_RMI represented by > XAResource instance com.ibm.mq.jmqi.JmqiXAResource@558fee4f > ############## Test Message: Darpan1 ############### > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > addParticipant ( XAResourceTransaction: > > 3139322E3136382E3136392E32342E746D30303030313030303537:3139322E3136382E3136392E32342E746D32 > ) for transaction 192.168.169.24.tm0000100057 > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > XAResource.start ( > > 3139322E3136382E3136392E32342E746D30303030313030303537:3139322E3136382E3136392E32342E746D32 > , XAResource.TMNOFLAGS ) on resource XADBMS represented by XAResource > instance oracle.jdbc.driver.T4CXAResource@5bf825cc > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > registerSynchronization ( > > com.atomikos.jdbc.AtomikosConnectionProxy$JdbcRequeueSynchronization@43eef0cd > ) for transaction 192.168.169.24.tm0000100057 > Hibernate: > select > darpantest0_.testid as testid0_0_, > darpantest0_.testname as testname0_0_ > from > darpantest darpantest0_ > where > darpantest0_.testid=? > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > registerSynchronization ( > > com.atomikos.jdbc.AtomikosConnectionProxy$JdbcRequeueSynchronization@43eef0cd > ) for transaction 192.168.169.24.tm0000100057 > Hibernate: > insert > into > darpantest > (testname, testid) > values > (?, ?) > [l) thread #2 - JmsConsumer[Q1]] atomikos WARN > Cannot > call method 'commit' while a global transaction is running > [l) thread #2 - JmsConsumer[Q1]] atomikos WARN > Cannot > call 'setAutoCommit(true)' while a global transaction is running > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > XAResource.end ( > > 3139322E3136382E3136392E32342E746D30303030313030303537:3139322E3136382E3136392E32342E746D32 > , XAResource.TMSUCCESS ) on resource XADBMS represented by XAResource > instance oracle.jdbc.driver.T4CXAResource@5bf825cc > [l) thread #2 - JmsConsumer[Q1]] DefaultErrorHandler ERROR > Failed > delivery for (MessageId: > ID:414d5120514d5f626f6f7261646c65798ba9bf4f200ace02 > on ExchangeId: ID-booradley-55966-1337982946182-0-1). Exhausted after > delivery attempt: 1 caught: > org.springframework.orm.hibernate3.HibernateSystemException: commit failed; > nested exception is org.hibernate.TransactionException: commit failed > org.springframework.orm.hibernate3.HibernateSystemException: commit failed; > nested exception is org.hibernate.TransactionException: commit failed > at > > org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:679)[spring-orm-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:102)[spring-orm-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.orm.jpa.JpaTransactionManager.doCommit(JpaTransactionManager.java:471)[spring-orm-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:754)[spring-tx-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723)[spring-tx-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:147)[spring-tx-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.apache.camel.component.jpa.JpaTemplateTransactionStrategy.execute(JpaTemplateTransactionStrategy.java:78)[file:/D:/workspace/OceanviewEIP3/bin/:] > at > > org.apache.camel.component.jpa.JpaProducer.process(JpaProducer.java:50)[file:/D:/workspace/OceanviewEIP3/bin/:] > at > > org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:115)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:285)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.SendProcessor.process(SendProcessor.java:110)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:71)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:333)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:223)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:304)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.Pipeline.process(Pipeline.java:117)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.Pipeline.process(Pipeline.java:80)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:333)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:223)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:96)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:109)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:71)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:56)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:333)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:223)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:178)[camel-spring-2.9.2.jar:2.9.2] > at > > org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)[spring-tx-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)[spring-tx-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:171)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:131)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:100)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:109)[camel-spring-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:304)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:50)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:71)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)[camel-core-2.9.2.jar:2.9.2] > at > > org.apache.camel.component.jms.EndpointMessageListener.onMessage(EndpointMessageListener.java:104)[camel-jms-2.9.2.jar:2.9.2] > at > > org.springframework.jms.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:560)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:498)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:467)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:325)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:243)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1058)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1050)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:947)[spring-jms-3.0.7.RELEASE.jar:3.0.7.RELEASE] > at > > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_23] > at > > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.0_23] > at java.lang.Thread.run(Thread.java:662)[:1.6.0_23] > [l) thread #2 - JmsConsumer[Q1]] atomikos INFO > setRollbackOnly() called for transaction 192.168.169.24.tm0000100057 > [l) thread #2 - JmsConsumer[Q1]] TransactionErrorHandler WARN > Transaction rollback (0x777490ad) redelivered(true) for (MessageId: > ID:414d5120514d5f626f6f7261646c65798ba9bf4f200ace02 on ExchangeId: > ID-booradley-55966-1337982946182-0-1) caught: > org.springframework.orm.hibernate3.HibernateSystemException: commit failed; > nested exception is org.hibernate.TransactionException: commit failed > [l) thread #2 - JmsConsumer[Q1]] EndpointMessageListener WARN > Execution of JMS message listener failed. Caused by: > [org.apache.camel.RuntimeCamelException - > org.springframework.orm.hibernate3.HibernateSystemException: commit failed; > nested exception is org.hibernate.TransactionException: commit failed] > > ################################################ > ROUTE > ################################################### > <route id="oceanview-route-jms"> > <from uri="test-jms:queue:Q1?transacted=true" /> > <to uri="bean:printer?method=printFileNames" /> > <process ref="jmsProcessor" /> > <transacted ref="PROPAGATION_REQUIRED"/> > <to > > uri="jpa:org.apache.camel.example.spring.DarpanTest?entityType=java.util.ArrayList" > /> > </route> > ###################################################### > JMS PROCESSOR > ######################################################### > > public class JMSProcessor implements Processor{ > > @Override > public void process(Exchange arg0) throws Exception { > > Object obj = arg0.getIn().getBody(); > > DarpanTest dt = new DarpanTest(); > dt.setTestid(102); > dt.setTestname(obj.toString()); > List<DarpanTest> li = new ArrayList<DarpanTest>(); > li.add(dt); > arg0.getIn().setBody(li); > } > ############################################ > JMS > ############################################## > <bean id="mqConnectionFactory" > class="com.ibm.mq.jms.MQXAQueueConnectionFactory"> > <property name="hostName" value="192.168.169.24" /> > <property name="port" value="1414" /> > <property name="queueManager" value="QM_booradley" /> > <property name="channel" value="S_booradley" /> > <property name="transportType" value="1" /> > </bean> > > <bean id="atomikosConnectionFactory" > class="com.atomikos.jms.AtomikosConnectionFactoryBean" > init-method="init" destroy-method="close"> > <property name="xaConnectionFactory"><ref > bean="mqConnectionFactory"/></property> > <property name="uniqueResourceName" > value="My_MQSeries_XA_RMI"/> > <property name="maxPoolSize" value="3"/> > </bean> > > <bean id="jmsConfig" > class="org.apache.camel.component.jms.JmsConfiguration"> > <property name="connectionFactory" > ref="atomikosConnectionFactory" /> > <property name="transactionManager" > ref="JtaTransactionManager"/> > </bean> > > <bean id="test-jms" > class="org.apache.camel.component.jms.JmsComponent"> > <property name="configuration" ref="jmsConfig" /> > </bean> > > <bean id="errorHandler" > class="org.apache.camel.spring.spi.TransactionErrorHandlerBuilder"> > <property name="springTransactionPolicy" > ref="PROPAGATION_REQUIRED"/> > </bean> > ######################################################## > ATOMIKOS > ################################################# > <bean id="AtomikosTransactionManager" > class="com.atomikos.icatch.jta.UserTransactionManager" > init-method="init" destroy-method="close"> > > <property name="forceShutdown" value="false" /> > </bean> > > > <bean id="AtomikosUserTransaction" > class="com.atomikos.icatch.jta.UserTransactionImp"> > <property name="transactionTimeout" value="50" /> > </bean> > > <bean id="JtaTransactionManager" > > class="org.springframework.transaction.jta.JtaTransactionManager"> > <property name="transactionManager" > ref="AtomikosTransactionManager" /> > <property name="userTransaction" > ref="AtomikosUserTransaction" /> > </bean> > > <bean id="PROPAGATION_REQUIRED" > class="org.apache.camel.spring.spi.SpringTransactionPolicy"> > <property name="transactionManager" ref="JtaTransactionManager"/> > <property name="propagationBehaviorName" > value="PROPAGATION_REQUIRED"/> > </bean> > > ######################################## > DATA SOURCE > ########################################## > <bean id="dataSource" class="com.atomikos.jdbc.AtomikosDataSourceBean" > init-method="init" destroy-method="close"> > <property > > name="xaDataSourceClassName"><value>oracle.jdbc.xa.client.OracleXADataSource</value></property> > <property > name="uniqueResourceName"><value>XADBMS</value></property> > <property name="xaProperties"> > <props> > <prop key="serverName">192.168.169.110</prop> > <prop key="portNumber">1521</prop> > <prop key="databaseName">SWQA</prop> > <prop key="user">dev</prop> > <prop key="password">dev</prop> > <prop key="driverType">4</prop> > <prop key="URL">jdbc:oracle:thin:@192.168.169.110:1521 > :SWQA</prop> > </props> > </property> > <property name="poolSize" value="3"/> > </bean> > > <bean id="txManager" > class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> > <property name="dataSource" ref="dataSource"/> > </bean> > > ############################################# > JPA > ########################################## > <bean id="jpa" class="org.apache.camel.component.jpa.JpaComponent"> > <property name="entityManagerFactory" > ref="entityManagerFactory" /> > </bean> > > <bean id="transactionTemplate" > > class="org.springframework.transaction.support.TransactionTemplate"> > <property name="transactionManager"> > <bean > class="org.springframework.orm.jpa.JpaTransactionManager"> > <property name="entityManagerFactory" > ref="entityManagerFactory" /> > <property name="dataSource" > ref="dataSource" /> > </bean> > </property> > </bean> > > <bean id="jpaTemplate" > class="org.springframework.orm.jpa.JpaTemplate"> > <property name="entityManagerFactory" > ref="entityManagerFactory" /> > </bean> > > <bean id="entityManagerFactory" > > class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> > <property name="persistenceUnitName" value="camel" /> > <property name="jpaVendorAdapter" ref="jpaAdapter" /> > <property name="dataSource" ref="dataSource" /> > </bean> > > <bean id="jpaAdapter" > > class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" /> > > > ########################################################### > persistence > ######################################################## > <persistence xmlns="http://java.sun.com/xml/ns/persistence" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > version="1.0"> > > <persistence-unit name="camel" > > <class>org.apache.camel.example.spring.DarpanTest</class> > <properties> > <property name="hibernate.archive.autodetection" > value="class" /> > <property name="hibernate.show_sql" value="true" /> > <property name="hibernate.format_sql" value="true" > /> > <property name="hibernate.dialect" > value="org.hibernate.dialect.Oracle10gDialect" /> > </properties> > </persistence-unit> > </persistence> > > > > -- > View this message in context: > http://camel.465427.n5.nabble.com/Need-help-with-Camel-JPA-Atomikos-tp5713578.html > Sent from the Camel - Users mailing list archive at Nabble.com. >