Dear community, i think i have a issue wiring up Spring(Blueprint) /
Hibernate / JPA / OPS4J JDBC / Camel, using:
1. Karaf 4.0.8 (Felix)
2. Servicemix Spring 3.2.17
3. Aries JPA 2.3.0
4. Hibernate 4.3.6
5. OPS4J Pax JDBC 0.9.0
6. Camel 2.16.5
The problem occurs when running a camel route using transaction demarcation
on it giving a javax.persistence.TransactionRequiredException: no
transaction is in progress.
Persistence unit
<persistence-unit name="pydio2xbound_mssql_persistence_unit"
transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<non-jta-data-source>osgi:service/javax.sql.DataSource/(osgi.jndi.service.name=pydio2xbound-mssql)</non-jta-data-source>
<class>de.hmm.medit.esb.xbound.pydio2xbound.some.classes</class>
<exclude-unlisted-classes>true</exclude-unlisted-classes>
<properties>
<property name="hibernate.dialect"
value="org.hibernate.dialect.SQLServer2008Dialect"/>
<property name="hibernate.ejb.entitymanager_factory_name"
value="mssql"/>
<property name="hibernate.connection.release_mode" value="auto"/>
<property name="hibernate.connection.autocommit" value="false" />
<property name="hibernate.showsql" value="false"/>
</properties>
</persistence-unit>
DAO context:
<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jpa="http://aries.apache.org/xmlns/jpa/v2.0.0"
xmlns:tx="http://aries.apache.org/xmlns/transactions/v2.0.0"
xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0
https://osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd
http://aries.apache.org/xmlns/jpa/v2.0.0
http://aries.apache.org/schemas/jpa/jpa_200.xsd">
<jpa:enable/>
<tx:enable/>
<bean id="daoService"
class="de.hmm.medit.esb.xbound.pydio2xbound.persistence.dao.impl.WellspectDao"/>
<service ref="daoService"
interface="de.hmm.medit.esb.xbound.pydio2xbound.persistence.dao.spi.WellspectDaoService"/>
</blueprint>
DAO service:
public class Dao implements DaoService {
@PersistenceContext(unitName = UNIT_NAME_MSSQL)
EntityManager entityManagerMSSQL;
@Transactional(Transactional.TxType.REQUIRED)
@Override
public void persist(AuftragsDatei auftragsDatei) {
entityManagerMSSQL.persist(auftragsDatei);
...etc...
OPS4J Persistence config file:
dataSourceName=pydio2xbound-mssql
databaseName=pydio2xbound
osgi.jdbc.driver.name=mssql-pool
url=jdbc:sqlserver://127.0.0.1:1433
user=root
password=************
jdbc.pool.maxTotal=4
#jdbc.factory.defaultAutoCommit=false
Karaf list datasource:
^karaf@root>service:list DataSource
[javax.sql.DataSource]
----------------------
databaseName = pydio2xbound
dataSourceName = pydio2xbound-mssql
felix.fileinstall.filename =
file:/E:/Development/karaf/medit-esb-1.3.1-SNAPSHOT/etc/org.ops4j.datasource-xbound.pydio2xbound.mssql.persistence.cfg
jdbc.pool.maxTotal = 4
osgi.jdbc.driver.name = mssql-pool
osgi.jndi.service.name = pydio2xbound-mssql
password = *********
service.bundleid = 252
service.factoryPid = org.ops4j.datasource
service.id = 271
service.pid = org.ops4j.datasource.0025c61e-c8d5-451f-91e5-f1258d806ce5
service.scope = singleton
url = jdbc:sqlserver://127.0.0.1:1433
user = root
Provided by :
OPS4J Pax JDBC Config (252)
Used by:
Apache Aries JPA container (236)
Spring / Camel context:
<reference id="mssqlDatasource" interface="javax.sql.DataSource"
filter="(&(objectClass=javax.sql.DataSource)(dataSourceName=pydio2xbound-mssql))"
availability="mandatory"/>
<reference id="daoService"
interface="de.hmm.medit.esb.xbound.pydio2xbound.persistence.dao.spi.DaoService"/>
<bean id="dbTransactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="mssqlDatasource"/>
</bean>
<bean id="dbPropagationRequired"
class="org.apache.camel.spring.spi.SpringTransactionPolicy">
<property name="transactionManager" ref="dbTransactionManager"/>
<property name="propagationBehaviorName" value="PROPAGATION_REQUIRED"/>
</bean>
<camelContext id="xbound-service-pydio2xbound-aggregation"
xmlns="http://camel.apache.org/schema/blueprint">
<route id="idempotent-data-persistence">
<from uri="direct:process-data"/>
<transacted ref="dbPropagationRequired"/>
<setHeader headerName="CamelHttpMethod">
<constant>GET</constant>
</setHeader>
<enrich strategyRef="dataAggregationStrategy">
<simple>cxfrs:bean:dynamicClient?address=${in.header.CamelHttpUri}</simple>
</enrich>
<process ref="csvParserProcessor"/>
<setHeader headerName="body">
<simple>${body}</simple>
</setHeader>
<setBody>
<simple>${body.auftragsDatei}</simple>
</setBody>
<bean ref="wellspectDaoService" method="persistDetectingDuplicatesMSSQL"/>
<...some more routing...>
</route>
Complete stacktrace:
2017-08-23 16:43:00,070 | DEBUG | 4 - timer://rest |
> aggregation | 48 - org.apache.camel.camel-core -
> 2.16.5 | Processing file :
> https://transfer.zhp-online.de/pydio/api/v2/io/my-files/excel/Auftrags%2520daten_20170504-8.csv
> 2017-08-23 16:43:00,070 | DEBUG | 4 - timer://rest |
> DataSourceTransactionManager | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Creating new
> transaction with name [null]: PROPAGATION_REQUIRED,ISOLATION_DEFAULT
> 2017-08-23 16:43:00,070 | DEBUG | 4 - timer://rest |
> DataSourceTransactionManager | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Acquired
> Connection [1735559577,
> URL=jdbc:sqlserver://127.0.0.1:1433;authenticationScheme=nativeAuthentication;xopenStates=false;sendTimeAsDatetime=true;trustServerCertificate=false;sendStringParametersAsUnicode=true;selectMethod=direct;responseBuffering=adaptive;packetSize=8000;multiSubnetFailover=false;loginTimeout=15;lockTimeout=-1;lastUpdateCount=true;encrypt=false;disableStatementPooling=true;databaseName=pydio2xbound;applicationName=Microsoft
>
> JDBC Driver for SQL Server;applicationIntent=readwrite;, UserName=root,
> Microsoft JDBC Driver 4.1 for SQL Server] for JDBC transaction
> 2017-08-23 16:43:00,070 | DEBUG | 4 - timer://rest |
> DataSourceTransactionManager | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Switching JDBC
> Connection [1735559577,
> URL=jdbc:sqlserver://127.0.0.1:1433;authenticationScheme=nativeAuthentication;xopenStates=false;sendTimeAsDatetime=true;trustServerCertificate=false;sendStringParametersAsUnicode=true;selectMethod=direct;responseBuffering=adaptive;packetSize=8000;multiSubnetFailover=false;loginTimeout=15;lockTimeout=-1;lastUpdateCount=true;encrypt=false;disableStatementPooling=true;databaseName=pydio2xbound;applicationName=Microsoft
>
> JDBC Driver for SQL Server;applicationIntent=readwrite;, UserName=root,
> Microsoft JDBC Driver 4.1 for SQL Server] to manual commit
> 2017-08-23 16:43:00,070 | DEBUG | 4 - timer://rest |
> aggregation | 48 - org.apache.camel.camel-core -
> 2.16.5 | Persisting
> https://transfer.zhp-online.de/pydio/api/v2/io/my-files/excel/Auftrags%2520daten_20170504-8.csv
> 2017-08-23 16:43:00,354 | DEBUG | 4 - timer://rest |
> TikaProcessor | 437 - de.hmm.medit.esb.tika.service -
> 1.3.1.SNAPSHOT | Metadata of the document:
> 2017-08-23 16:43:00,354 | DEBUG | 4 - timer://rest |
> TikaProcessor | 437 - de.hmm.medit.esb.tika.service -
> 1.3.1.SNAPSHOT | Content-Encoding : windows-1252
> 2017-08-23 16:43:00,354 | DEBUG | 4 - timer://rest |
> TikaProcessor | 437 - de.hmm.medit.esb.tika.service -
> 1.3.1.SNAPSHOT | resourceName : Auftrags daten_20170504-8.csv
> 2017-08-23 16:43:00,354 | DEBUG | 4 - timer://rest |
> TikaProcessor | 437 - de.hmm.medit.esb.tika.service -
> 1.3.1.SNAPSHOT | Content-Type : text/csv; charset=windows-1252
> 2017-08-23 16:43:00,386 | DEBUG | 4 - timer://rest |
> CSVParserProcessor | 621 -
> de.hmm.medit.esb.xbound.pydio2xbound.aggregation - 1.3.1.SNAPSHOT | Parsed
> CSV entries: 107
> 2017-08-23 16:43:00,402 | ERROR | 4 - timer://rest |
> DefaultErrorHandler | 48 - org.apache.camel.camel-core -
> 2.16.5 | Failed delivery for (MessageId:
> ID-LH00127-56851-1503499248618-1-14 on ExchangeId:
> ID-LH00127-56851-1503499248618-1-13). Exhausted after delivery attempt: 1
> caught: javax.persistence.TransactionRequiredException: no transaction is
> in progress
>
> Message History
>
> ---------------------------------------------------------------------------------------------------------------------------------------
> RouteId ProcessorId
> Processor
>
> Elapsed (ms)
> [aggregation-rest-c] [aggregation-rest-c]
> [timer://rest?fixedRate=true&repeatCount=1
>
> ] [ 548]
> [aggregation-rest-c] [filter3 ]
> [filter[simple{${body.mimeString} == 'text/csv' or ${body.mimeString} ==
> 'appli] [ 332]
> [aggregation-rest-c] [bean8 ] [bean[ref:uriBuilder method:
> setFileURIv2] ] [ 0]
> [aggregation-rest-c] [log14 ]
> [log
>
> ] [ 0]
> [aggregation-rest-c] [to11 ]
> [direct:process-data
>
> ] [ 332]
> [idempotent-data-pe] [transacted3 ]
> [transacted[ref:dbPropagationRequired]
>
> ] [ 332]
> [idempotent-data-pe] [log16 ]
> [log
>
> ] [ 0]
> [idempotent-data-pe] [setHeader16 ]
> [setHeader[CamelHttpMethod]
>
> ] [ 0]
> [idempotent-data-pe] [enrich3 ]
> [enrich[simple{cxfrs:bean:dynamicClient?address=${in.header.CamelHttpUri}}]
>
> ] [ 153]
> [idempotent-data-pe] [process3 ]
> [ref:csvParserProcessor
>
> ] [ 163]
> [idempotent-data-pe] [setHeader17 ]
> [setHeader[body]
>
> ] [ 0]
> [idempotent-data-pe] [setBody5 ]
> [setBody[simple{${body.auftragsDatei}}] ]
> [ 0]
> [idempotent-data-pe] [bean10 ] [bean[ref:daoService method:
> persist] ] [ 16]
>
> Exchange
>
> ---------------------------------------------------------------------------------------------------------------------------------------
> Exchange[
> Id ID-LH00127-56851-1503499248618-1-13
> ExchangePattern InOnly
> Headers {Accept-Ranges=0-211690,
> body=de.hmm.medit.esb.xbound.pydio2xbound.aggregation.internal.model.PydioContent@6c23ef27,
>
> breadcrumbId=ID-LH00127-56851-1503499248618-1-1, Cache-Control=no-cache,
> must-revalidate, CamelHttpMethod=GET, CamelHttpResponseCode=200,
> CamelHttpUri=https://transfer.zhp-online.de/pydio/api/v2/io/my-files/excel/Auftrags%2520daten_20170504-8.csv,
>
> CamelRedelivered=false, CamelRedeliveryCounter=0, connection=close,
> Content-Disposition=attachment; filename="Auftrags daten_20170504-8.csv",
> Content-Length=211690, Content-Range=bytes 0-211689/211690;,
> content-transfer-encoding=binary, content-type=application/force-download;
> name="Auftrags daten_20170504-8.csv", Date=Wed, 23 Aug 2017 14:43:00 GMT,
> Expires=0, firedTime=Wed Aug 23 16:42:59 CEST 2017, Pragma=no-cache,
> Server=Apache/2.4.18 (Red Hat) PHP/5.6.25, X-Powered-By=PHP/5.6.25}
> BodyType
> de.hmm.medit.esb.xbound.pydio2xbound.persistence.entities.AuftragsDatei
> Body
> de.hmm.medit.esb.xbound.pydio2xbound.persistence.entities.AuftragsDatei@16cf6715
> ]
>
> Stacktrace
>
> ---------------------------------------------------------------------------------------------------------------------------------------
> javax.persistence.TransactionRequiredException: no transaction is in
> progress
> at
> org.hibernate.jpa.spi.AbstractQueryImpl.checkTransaction(AbstractQueryImpl.java:222)
> at
> org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:492)
> at
> de.hmm.medit.esb.xbound.pydio2xbound.persistence.dao.impl.Dao.persistDetectingDuplicatesMSSQL(Dao.java:42)
> at
> Proxyac81bcf6_79cf_4580_afb2_4af8d3f3666c.persistDetectingDuplicatesMSSQL(Unknown
>
> Source)
> at
> Proxy33315017_2dda_4860_80a6_a01c145301b5.persistDetectingDuplicatesMSSQL(Unknown
>
> Source)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)[:1.8.0_121]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_121]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_121]
> at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_121]
> at
> org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:408)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.MethodInfo$1.doProceed(MethodInfo.java:279)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:252)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:177)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:109)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:337)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:59)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:171)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:99)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:112)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:181)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)[157:org.apache.servicemix.bundles.spring-tx:3.2.17.RELEASE_1]
> at
> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)[157:org.apache.servicemix.bundles.spring-tx:3.2.17.RELEASE_1]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:174)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:134)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:103)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:112)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.FilterProcessor.process(FilterProcessor.java:57)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:677)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:605)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:237)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Splitter.process(Splitter.java:104)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:165)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:73)[48:org.apache.camel.camel-core:2.16.5]
> at java.util.TimerThread.mainLoop(Timer.java:555)[:1.8.0_121]
> at java.util.TimerThread.run(Timer.java:505)[:1.8.0_121]
> 2017-08-23 16:43:00,404 | DEBUG | 4 - timer://rest |
> TransactionTemplate | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Initiating
> transaction rollback on application exception
> org.apache.camel.RuntimeCamelException:
> javax.persistence.TransactionRequiredException: no transaction is in
> progress
> at
> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1652)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:188)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)[157:org.apache.servicemix.bundles.spring-tx:3.2.17.RELEASE_1]
> at
> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)[157:org.apache.servicemix.bundles.spring-tx:3.2.17.RELEASE_1]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:174)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:134)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:103)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:112)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.FilterProcessor.process(FilterProcessor.java:57)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:677)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:605)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:237)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Splitter.process(Splitter.java:104)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:165)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:73)[48:org.apache.camel.camel-core:2.16.5]
> at java.util.TimerThread.mainLoop(Timer.java:555)[:1.8.0_121]
> at java.util.TimerThread.run(Timer.java:505)[:1.8.0_121]
> Caused by: javax.persistence.TransactionRequiredException: no transaction
> is in progress
> at
> org.hibernate.jpa.spi.AbstractQueryImpl.checkTransaction(AbstractQueryImpl.java:222)
> at
> org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:492)
> at
> de.hmm.medit.esb.xbound.pydio2xbound.persistence.dao.impl.Dao.persistDetectingDuplicatesMSSQL(Dao.java:42)
> at
> Proxyac81bcf6_79cf_4580_afb2_4af8d3f3666c.persistDetectingDuplicatesMSSQL(Unknown
>
> Source)
> at
> Proxy33315017_2dda_4860_80a6_a01c145301b5.persistDetectingDuplicatesMSSQL(Unknown
>
> Source)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)[:1.8.0_121]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_121]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_121]
> at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_121]
> at
> org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:408)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.MethodInfo$1.doProceed(MethodInfo.java:279)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:252)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:177)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:109)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:337)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:59)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:171)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:99)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:112)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:181)[52:org.apache.camel.camel-spring:2.16.5]
> ... 35 more
> 2017-08-23 16:43:00,406 | DEBUG | 4 - timer://rest |
> DataSourceTransactionManager | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Initiating
> transaction rollback
> 2017-08-23 16:43:00,407 | DEBUG | 4 - timer://rest |
> DataSourceTransactionManager | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Rolling back
> JDBC transaction on Connection [1735559577,
> URL=jdbc:sqlserver://127.0.0.1:1433;authenticationScheme=nativeAuthentication;xopenStates=false;sendTimeAsDatetime=true;trustServerCertificate=false;sendStringParametersAsUnicode=true;selectMethod=direct;responseBuffering=adaptive;packetSize=8000;multiSubnetFailover=false;loginTimeout=15;lockTimeout=-1;lastUpdateCount=true;encrypt=false;disableStatementPooling=true;databaseName=pydio2xbound;applicationName=Microsoft
>
> JDBC Driver for SQL Server;applicationIntent=readwrite;, UserName=root,
> Microsoft JDBC Driver 4.1 for SQL Server]
> 2017-08-23 16:43:00,408 | DEBUG | 4 - timer://rest |
> DataSourceTransactionManager | 157 -
> org.apache.servicemix.bundles.spring-tx - 3.2.17.RELEASE_1 | Releasing JDBC
> Connection [1735559577,
> URL=jdbc:sqlserver://127.0.0.1:1433;authenticationScheme=nativeAuthentication;xopenStates=false;sendTimeAsDatetime=true;trustServerCertificate=false;sendStringParametersAsUnicode=true;selectMethod=direct;responseBuffering=adaptive;packetSize=8000;multiSubnetFailover=false;loginTimeout=15;lockTimeout=-1;lastUpdateCount=true;encrypt=false;disableStatementPooling=true;databaseName=pydio2xbound;applicationName=Microsoft
>
> JDBC Driver for SQL Server;applicationIntent=readwrite;, UserName=root,
> Microsoft JDBC Driver 4.1 for SQL Server] after transaction
> 2017-08-23 16:43:00,408 | DEBUG | 4 - timer://rest |
> DataSourceUtils | 552 -
> org.apache.servicemix.bundles.spring-jdbc - 3.2.17.RELEASE_1 | Returning
> JDBC Connection to DataSource
> 2017-08-23 16:43:00,408 | WARN | 4 - timer://rest |
> TransactionErrorHandler | 48 - org.apache.camel.camel-core -
> 2.16.5 | Transaction rollback (0x6fa0c2c8) redelivered(unknown) for
> (MessageId: ID-LH00127-56851-1503499248618-1-12 on ExchangeId:
> ID-LH00127-56851-1503499248618-1-13) caught:
> javax.persistence.TransactionRequiredException: no transaction is in
> progress
> 2017-08-23 16:43:00,408 | WARN | 4 - timer://rest |
> TimerConsumer | 48 - org.apache.camel.camel-core -
> 2.16.5 | Error processing exchange.
> Exchange[ID-LH00127-56851-1503499248618-1-2][Message:
> de.hmm.medit.esb.pydio.api.TreeNodeSaxHandler@467c1a52]. Caused by:
> [org.apache.camel.RuntimeCamelException -
> javax.persistence.TransactionRequiredException: no transaction is in
> progress]
> org.apache.camel.RuntimeCamelException:
> javax.persistence.TransactionRequiredException: no transaction is in
> progress
> at
> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1652)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:188)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.springframework.transaction.support.TransactionCallbackWithoutResult.doInTransaction(TransactionCallbackWithoutResult.java:33)[157:org.apache.servicemix.bundles.spring-tx:3.2.17.RELEASE_1]
> at
> org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:131)[157:org.apache.servicemix.bundles.spring-tx:3.2.17.RELEASE_1]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.doInTransactionTemplate(TransactionErrorHandler.java:174)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processInTransaction(TransactionErrorHandler.java:134)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:103)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:112)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:62)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.SendProcessor.process(SendProcessor.java:145)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.FilterProcessor.process(FilterProcessor.java:57)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:677)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.doProcessSequential(MulticastProcessor.java:605)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:237)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Splitter.process(Splitter.java:104)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:196)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:165)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:73)[48:org.apache.camel.camel-core:2.16.5]
> at java.util.TimerThread.mainLoop(Timer.java:555)[:1.8.0_121]
> at java.util.TimerThread.run(Timer.java:505)[:1.8.0_121]
> Caused by: javax.persistence.TransactionRequiredException: no transaction
> is in progress
> at
> org.hibernate.jpa.spi.AbstractQueryImpl.checkTransaction(AbstractQueryImpl.java:222)
> at
> org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:492)
> at
> de.hmm.medit.esb.xbound.pydio2xbound.persistence.dao.impl.Dao.persistDetectingDuplicatesMSSQL(Dao.java:42)
> at
> Proxyac81bcf6_79cf_4580_afb2_4af8d3f3666c.persistDetectingDuplicatesMSSQL(Unknown
>
> Source)
> at
> Proxy33315017_2dda_4860_80a6_a01c145301b5.persistDetectingDuplicatesMSSQL(Unknown
>
> Source)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)[:1.8.0_121]
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_121]
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_121]
> at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_121]
> at
> org.apache.camel.component.bean.MethodInfo.invoke(MethodInfo.java:408)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.MethodInfo$1.doProceed(MethodInfo.java:279)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.MethodInfo$1.proceed(MethodInfo.java:252)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.component.bean.BeanProcessor.process(BeanProcessor.java:177)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:109)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:337)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.DefaultErrorHandler.process(DefaultErrorHandler.java:59)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.CamelInternalProcessor.process(CamelInternalProcessor.java:171)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:121)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.Pipeline.process(Pipeline.java:83)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:99)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.process(TransactionErrorHandler.java:112)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:77)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:460)[48:org.apache.camel.camel-core:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler.processByErrorHandler(TransactionErrorHandler.java:218)[52:org.apache.camel.camel-spring:2.16.5]
> at
> org.apache.camel.spring.spi.TransactionErrorHandler$1.doInTransactionWithoutResult(TransactionErrorHandler.java:181)[52:org.apache.camel.camel-spring:2.16.5]
>
>
>
A transaction is being set up, ut by the time it reaches my DAO there is no
TX in progress. I guess i am using the wrong Spring JTA transaction manager?
--
--
------------------
OPS4J - http://www.ops4j.org - [email protected]
---
You received this message because you are subscribed to the Google Groups
"OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.