[esb-issues] [JBoss JIRA] Commented: (JBESB-3511) JBESB camel integration issue with JPA URI
David Ward (JIRA)
jira-events at lists.jboss.org
Tue Nov 2 11:04:02 EDT 2010
[ https://jira.jboss.org/browse/JBESB-3511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12560875#action_12560875 ]
David Ward commented on JBESB-3511:
-----------------------------------
Without having looked at this more than a glance, my gut reaction is, "Why is there a JpaTemplate being carried around in the message headers anyways?" But I agree with Tom that we can protect ourselves by not mapping non-Serializable headers.
> JBESB camel integration issue with JPA URI
> ------------------------------------------
>
> Key: JBESB-3511
> URL: https://jira.jboss.org/browse/JBESB-3511
> Project: JBoss ESB
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Adapters
> Affects Versions: 4.9
> Environment: Windows XP, Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
> Reporter: Dushman Elvitigala
> Assignee: Tom Fennelly
>
> Test was performed with the below configuration:
> <providers>
> <camel-provider name="camelProvider1">
> <camel-bus busid="camelBus2">
> <from uri="jpa://[classname]?persistenceUnit=cdrLoader&consumer.namedQuery=loadRecords" />
> </camel-bus>
> </camel-provider>
> </providers>
> <services>
> <service category="camelDbServiceCategory" name="camelDbService" description="databse service" invmScope="GLOBAL">
> <listeners>
> <camel-gateway name="camelGateway2" busidref="camelBus2" />
> </listeners>
> <actions>
> <action name="action1" class="org.jboss.soa.esb.actions.SystemPrintln" />
> </actions>
> </service>
> </services>
> =====================================================
> <persistence-unit name="cdrLoader" transaction-type="RESOURCE_LOCAL">
> <non-jta-data-source>java:/cepDS</non-jta-data-source>
> <class>xxxxxx</class>
> <properties>
> <property name="hibernate.archive.autodetection" value="class, hbm" />
> <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect" />
> <property name="hibernate.hbm2ddl.auto" value="update" />
> <property name="hibernate.show_sql" value="true" />
> <property name="hibernate.format_sql" value="true" />
> </properties>
> </persistence-unit>
> ======================================================
> Exception:
> ERROR [DefaultErrorHandler] Failed delivery for exchangeId: 3ed796b8-8e03-4538-91d4-e4fded1fdeac. Exhausted after delivery attempt: 1 caught: java.lang.IllegalArgumentException: Value of
> property 'CamelJpaTemplate' must implement java.io.Serializable. Value is of type org.springframework.orm.jpa.JpaTemplate
> java.lang.IllegalArgumentException: Value of property 'CamelJpaTemplate' must implement java.io.Serializable. Value is of type org.springframework.orm.jpa.JpaTemplate
> at org.jboss.internal.soa.esb.message.format.xml.PropertiesImpl.setProperty(PropertiesImpl.java:77)
> at org.jboss.soa.esb.listeners.gateway.camel.CamelMessageComposer.populateMessage(CamelMessageComposer.java:63)
> at org.jboss.soa.esb.listeners.gateway.camel.CamelMessageComposer.populateMessage(CamelMessageComposer.java:41)
> at org.jboss.soa.esb.listeners.message.AbstractMessageComposer.compose(AbstractMessageComposer.java:76)
> at org.jboss.soa.esb.listeners.gateway.camel.ServiceProcessor.process(ServiceProcessor.java:48)
> at org.apache.camel.impl.ProcessorEndpoint.onExchange(ProcessorEndpoint.java:95)
> at org.apache.camel.impl.ProcessorEndpoint$1.process(ProcessorEndpoint.java:65)
> at org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:104)
> at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:272)
> at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:98)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:290)
> at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:202)
> at org.apache.camel.processor.DefaultChannel.process(DefaultChannel.java:256)
> at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:99)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:70)
> at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:98)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:89)
> at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:68)
> at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:91)
> at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:85)
> at org.apache.camel.component.jpa.JpaConsumer.processBatch(JpaConsumer.java:145)
> at org.apache.camel.component.jpa.JpaConsumer$1.doInJpa(JpaConsumer.java:95)
> at org.apache.camel.component.jpa.JpaTemplateTransactionStrategy$1$1.doInJpa(JpaTemplateTransactionStrategy.java:82)
> at org.springframework.orm.jpa.JpaTemplate.execute(JpaTemplate.java:183)
> at org.springframework.orm.jpa.JpaTemplate.execute(JpaTemplate.java:146)
> at org.apache.camel.component.jpa.JpaTemplateTransactionStrategy$1.doInTransaction(JpaTemplateTransactionStrategy.java:80)
> at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)
> at org.apache.camel.component.jpa.JpaTemplateTransactionStrategy.execute(JpaTemplateTransactionStrategy.java:78)
> at org.apache.camel.component.jpa.JpaConsumer.poll(JpaConsumer.java:79)
> at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:98)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
> at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:181)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:205)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
> at java.lang.Thread.run(Thread.java:619)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the esb-issues
mailing list