Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void main(String[] args) throws Exception {
- Configuration BTMconfig = TransactionManagerServices.getConfiguration();
- BTMconfig.setServerId("spring-btm");
- BitronixTransactionManager BitronixTM = TransactionManagerServices.getTransactionManager();
- JtaTransactionManager JTAtm = new JtaTransactionManager();
- JTAtm.setUserTransaction(BitronixTM);
- JTAtm.setTransactionManager(BitronixTM);
- PoolingDataSource xaDataSource = new PoolingDataSource();
- xaDataSource.setClassName("org.apache.derby.jdbc.EmbeddedXADataSource");
- xaDataSource.setUniqueName("xaDataSource");
- xaDataSource.setMinPoolSize(1);
- xaDataSource.setMaxPoolSize(5);
- xaDataSource.setAllowLocalTransactions(true);
- Properties xaDataSourceProp = new Properties();
- xaDataSourceProp.put("DatabaseName","DerbyDB");
- xaDataSourceProp.put("CreateDatabase","true");
- xaDataSourceProp.put("DataSourceName","xaDataSource");
- xaDataSource.setDriverProperties(xaDataSourceProp);
- xaDataSource.init();
- SimpleRegistry registry = new SimpleRegistry();
- registry.put("transactionManager", JTAtm);
- registry.put("xaDataSource", xaDataSource);
- CamelContext camelContext = new DefaultCamelContext(registry);
- camelContext.addRoutes(new RouteBuilder(){
- @Override
- public void configure() throws Exception {
- from("file:data/inbox?noop=true").
- transacted().
- process(new ToJdbcProcessor()).
- to("jdbc:xaDataSource");
- }
- });
- camelContext.start();
- Thread.sleep(3000);
- }
- [ thread #0 - file://data/inbox] JdbcProducer WARN Error occurred during jdbc rollback. This exception will be ignored.
- java.sql.SQLException: cannot rollback a resource enlisted in a global transaction
- at bitronix.tm.resource.jdbc.JdbcConnectionHandle.rollback(JdbcConnectionHandle.java:120)[btm-2.1.4.jar:2.1.4]
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_111]
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_111]
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_111]
- at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_111]
- at bitronix.tm.resource.jdbc.BaseProxyHandlerClass.invoke(BaseProxyHandlerClass.java:64)[btm-2.1.4.jar:2.1.4]
- at com.sun.proxy.$Proxy16.rollback(Unknown Source)[:]
- at org.apache.camel.component.jdbc.JdbcProducer.processingSqlBySettingAutoCommit(JdbcProducer.java:92)[camel-jdbc-2.18.0.jar:2.18.0]
- at org.apache.camel.component.jdbc.JdbcProducer.process(JdbcProducer.java:67)[camel-jdbc-2.18.0.jar:2.18.0]
- at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:400)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:172)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.Pipeline.process(Pipeline.java:120)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:220)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:101)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:114)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:220)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:183)[camel-spring-2.18.0.jar:2.18.0]
- at org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:34)[spring-tx-4.3.3.RELEASE.jar:4.3.3.RELEASE]
- at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133)[spring-tx-4.3.3.RELEASE.jar:4.3.3.RELEASE]
- at org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:176)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:136)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:105)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:114)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:460)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:227)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:191)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:175)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:102)[camel-core-2.18.0.jar:2.18.0]
- at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_111]
- at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)[:1.8.0_111]
- at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)[:1.8.0_111]
- at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)[:1.8.0_111]
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_111]
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_111]
- at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
- [ thread #0 - file://data/inbox] DefaultErrorHandler ERROR Failed delivery for (MessageId: ID-office11238-50617-1479470669103-0-3 on ExchangeId: ID-office11238-50617-1479470669103-0-2). Exhausted after delivery attempt: 1 caught: java.sql.SQLException: cannot commit a resource enlisted in a global transaction
- Message History
- ---------------------------------------------------------------------------------------------------------------------------------------
- RouteId ProcessorId Processor Elapsed (ms)
- [route1 ] [route1 ] [file://data/inbox?noop=true ] [ 211]
- [route1 ] [transacted1 ] [transacted ] [ 208]
- [route1 ] [process1 ] [Processor@0x39502c11 ] [ 1]
- [route1 ] [to1 ] [jdbc:xaDataSource ] [ 182]
- Stacktrace
- ---------------------------------------------------------------------------------------------------------------------------------------
- java.sql.SQLException: cannot commit a resource enlisted in a global transaction
- at bitronix.tm.resource.jdbc.JdbcConnectionHandle.commit(JdbcConnectionHandle.java:111)[btm-2.1.4.jar:2.1.4]
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_111]
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_111]
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_111]
- at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_111]
- at bitronix.tm.resource.jdbc.BaseProxyHandlerClass.invoke(BaseProxyHandlerClass.java:64)[btm-2.1.4.jar:2.1.4]
- at com.sun.proxy.$Proxy16.commit(Unknown Source)[:]
- at org.apache.camel.component.jdbc.JdbcProducer.processingSqlBySettingAutoCommit(JdbcProducer.java:88)[camel-jdbc-2.18.0.jar:2.18.0]
- at org.apache.camel.component.jdbc.JdbcProducer.process(JdbcProducer.java:67)[camel-jdbc-2.18.0.jar:2.18.0]
- at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:400)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:172)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.Pipeline.process(Pipeline.java:120)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:220)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:101)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:114)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:542)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:220)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:183)[camel-spring-2.18.0.jar:2.18.0]
- at org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:34)[spring-tx-4.3.3.RELEASE.jar:4.3.3.RELEASE]
- at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:133)[spring-tx-4.3.3.RELEASE.jar:4.3.3.RELEASE]
- at org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:176)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:136)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:105)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:114)[camel-spring-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:197)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.component.file.GenericFileConsumer.processExchange(GenericFileConsumer.java:460)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.component.file.GenericFileConsumer.processBatch(GenericFileConsumer.java:227)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.component.file.GenericFileConsumer.poll(GenericFileConsumer.java:191)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:175)[camel-core-2.18.0.jar:2.18.0]
- at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:102)[camel-core-2.18.0.jar:2.18.0]
- at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_111]
- at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)[:1.8.0_111]
- at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)[:1.8.0_111]
- at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)[:1.8.0_111]
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_111]
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_111]
- at java.lang.Thread.run(Thread.java:745)[:1.8.0_111]
- [ thread #0 - file://data/inbox] TransactionErrorHandler WARN Transaction rollback (0x5bc9ba1d) redelivered(unknown) for (MessageId: ID-office11238-50617-1479470669103-0-1 on ExchangeId: ID-office11238-50617-1479470669103-0-2) caught: java.sql.SQLException: cannot commit a resource enlisted in a global transaction
- [ thread #0 - file://data/inbox] GenericFileOnCompletion WARN Rollback file strategy: org.apache.camel.component.file.strategy.GenericFileRenameProcessStrategy@11388081 for file: GenericFile[1.txt]
- [ thread #0 - file://data/inbox] JdbcProducer WARN Error occurred during jdbc rollback. This exception will be ignored.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement