Hi Claus,
Ok, this makes sense, but unfortunately I can't figure out how to get the 
transaction manager.  I attempted to just create a new JtaTransactionManager 
and pass that into the JPA component, but that produced the following 
exception.  

org.springframework.transaction.CannotCreateTransactionException: No JTA 
UserTransaction available - programmatic 
PlatformTransactionManager.getTransaction usage not supported
        at 
org.springframework.transaction.jta.JtaTransactionManager.doGetTransaction(JtaTransactionManager.java:782)
        at 
org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:337)
        at 
org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)
        at org.apache.camel.component.jpa.JpaConsumer.poll(JpaConsumer.java:92)
        at 
org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledPollConsumer.java:174)
        at 
org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPollConsumer.java:101)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)


I then attempted to do a jndi lookup of of the UserTransaction object and then 
build a JtaTransactionManager object from that, which I could then pass in to 
the component, but encountered the following error when attempting to look up 
the UserTransaction object.
Lookup of java:comp/UserTransaction not allowed for Container managed 
Transaction beans

The thing is that I don't even care about Transactions for this application and 
would be happy to disable them if there was a way to do so.  

Have you heard of other experiences from users who are running both EJBs and 
the JPA component within the same application?  Any other ideas of what I can 
do to get the JPA component up and running?

Thanks,




________________________________________
From: Claus Ibsen <claus.ib...@gmail.com>
Sent: Monday, April 20, 2015 12:17 AM
To: users@camel.apache.org
Subject: Re: Using JPA component in EJB application and having issues with null 
TransactionManager.

Hi

You can configure and set the transaction manager and whatnot directly
on the JpaComponent using the setters. Then there is no lookup needed
from Camel which you talk about is causing a problem for you.

On Sat, Apr 18, 2015 at 3:48 PM, Rob Terpilowski <r...@lynden.com> wrote:
> Thanks Claus,
>
> we are currently not using spring directly in this application, so we don't 
> have a spring.xml file explicitly defined, so I'm not sure if this will be an 
> issue with our EJBs if we set up a different transaction manager.
>
> I was also tried to see if I could set up 2 different persistence units, one 
> with the transactions set to "JTA", which the EJBs could use, and the other 
> persistence unit set to RESOURCE_LOCAL, which the Camel JPA component could 
> use, but issue still exists in that case.
>
> Surely there must be others out there who are using the JPA component in an 
> application that uses EJBs, but I've found very little in my google searches 
> related to running an app with this configuration.
>
> Is there anywhere you could point me to for seeing what it would take to 
> implement this in Java?
>
> We are using Camel 2.15
>
>
> Thanks for your suggestions.
>
> -Rob
> ________________________________________
> From: Claus Ibsen <claus.ib...@gmail.com>
> Sent: Friday, April 17, 2015 10:29 PM
> To: users@camel.apache.org
> Subject: Re: Using JPA component in EJB application and having issues with 
> null TransactionManager.
>
> Hi
>
> You can likely configure the transaction manager on the jpa component
> directly if you use spring xml
>
> <bean id="jpa" class="org.apache.camel.component.jpa.JpaComponent">
>    <property name ..."
>    .. configure transaction manager here
> </bean>
>
> You can also configure this from java code, but that requires a bit
> different work.
>
> Maybe that helps?
>
> And btw what version of Camel do you use?
>
>
> On Sat, Apr 18, 2015 at 1:21 AM, Rob Terpilowski <r...@lynden.com> wrote:
>> Hello,
>>
>> I have a web application which I am running in Glassfish 4.1, which contains 
>> an EJB which is using Hibernate to access a SQL Server DB.  I would also 
>> like to use the Camel JPA component for some new functionality, but I am 
>> getting NullPointerExceptions complaining about the transaction manager when 
>> I attempt to run a JPA consumer in the app.  Details are below:
>>
>>
>> To start with, my persistance.xml contains:
>>
>> <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence"; 
>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
>> xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence 
>> http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd";>
>>   <persistence-unit name="com.lynden.peoplenet.test.pu" 
>> transaction-type="JTA">
>>     <provider>org.hibernate.ejb.HibernatePersistence</provider>
>>     <jta-data-source>PeopleNet</jta-data-source>
>>
>>     <exclude-unlisted-classes>false</exclude-unlisted-classes>
>>     <properties>
>>     </properties>
>>   </persistence-unit>
>> </persistence>
>>
>>
>>
>> The URL of the JPA component is:
>> jpa://com.lynden.peoplnet.test.bean.AllinboundMessagesSqlBean?consumeDelete=false&consumer.delay=60000&consumer.namedQuery=AllinboundMessagesSqlBean.findByProcessed&maxMessagesPerPoll=10&maximumResults=10&persistenceUnit=com.lynden.peoplenet.test.pu
>>
>>
>> The following exception is being thrown in the web application's log file:
>> javax.ejb.EJBTransactionRolledbackException
>>         at 
>> com.sun.ejb.containers.BaseContainer.mapLocal3xException(BaseContainer.java:2342)
>>         at 
>> com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2123)
>>         at 
>> com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2044)
>>         at 
>> com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:220)
>>         at 
>> com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:88)
>>         at com.sun.proxy.$Proxy697.addRoutesToCamelContext(Unknown Source)
>>         at 
>> com.lynden.esperanto.camel.__EJB31_Generated__DefaultRouteBuilder__Intf____Bean__.addRoutesToCamelContext(Unknown
>>  Source)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> org.jboss.weld.util.reflection.Reflections.invokeAndUnwrap(Reflections.java:414)
>>         at 
>> org.jboss.weld.bean.proxy.EnterpriseBeanProxyMethodHandler.invoke(EnterpriseBeanProxyMethodHandler.java:127)
>>         at 
>> org.jboss.weld.bean.proxy.EnterpriseTargetBeanInstance.invoke(EnterpriseTargetBeanInstance.java:56)
>>         at 
>> org.jboss.weld.bean.proxy.InjectionPointPropagatingEnterpriseTargetBeanInstance.invoke(InjectionPointPropagatingEnterpriseTargetBeanInstance.java:65)
>>         at 
>> org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:100)
>>         at 
>> com.lynden.esperanto.camel.DefaultRouteBuilder$Proxy$_$$_Weld$EnterpriseProxy$.addRoutesToCamelContext(Unknown
>>  Source)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext$1.call(DefaultCamelContext.java:731)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext$1.call(DefaultCamelContext.java:728)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.doWithDefinedClassLoader(DefaultCamelContext.java:2486)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelContext.java:728)
>>         at 
>> org.apache.camel.cdi.CdiCamelContext$Proxy$_$$_WeldClientProxy.addRoutes(Unknown
>>  Source)
>>         at 
>> com.lynden.esperanto.DefaultEsperantoService.start(DefaultEsperantoService.java:59)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> com.sun.ejb.containers.interceptors.BeanCallbackInterceptor.intercept(InterceptorManager.java:1035)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
>>         at 
>> org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:55)
>>         at 
>> org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)
>>         at sun.reflect.GeneratedMethodAccessor876.invoke(Unknown Source)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackInvocationContext.proceed(CallbackInvocationContext.java:205)
>>         at 
>> com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
>>         at 
>> com.sun.ejb.containers.interceptors.SystemInterceptorProxy.init(SystemInterceptorProxy.java:125)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackInterceptor.intercept(InterceptorManager.java:986)
>>         at 
>> com.sun.ejb.containers.interceptors.CallbackChainImpl.invokeNext(CallbackChainImpl.java:72)
>>         at 
>> com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:412)
>>         at 
>> com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:375)
>>         at 
>> com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:2014)
>>         at 
>> com.sun.ejb.containers.AbstractSingletonContainer.createSingletonEJB(AbstractSingletonContainer.java:468)
>>         at 
>> com.sun.ejb.containers.AbstractSingletonContainer.access$000(AbstractSingletonContainer.java:74)
>>         at 
>> com.sun.ejb.containers.AbstractSingletonContainer$SingletonContextFactory.create(AbstractSingletonContainer.java:647)
>>         at 
>> com.sun.ejb.containers.AbstractSingletonContainer.instantiateSingletonInstance(AbstractSingletonContainer.java:389)
>>         at 
>> org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:219)
>>         at 
>> org.glassfish.ejb.startup.SingletonLifeCycleManager.initializeSingleton(SingletonLifeCycleManager.java:180)
>>         at 
>> org.glassfish.ejb.startup.SingletonLifeCycleManager.doStartup(SingletonLifeCycleManager.java:158)
>>         at 
>> org.glassfish.ejb.startup.EjbApplication.start(EjbApplication.java:166)
>>         at org.glassfish.internal.data.EngineRef.start(EngineRef.java:122)
>>         at org.glassfish.internal.data.ModuleInfo.start(ModuleInfo.java:291)
>>         at 
>> org.glassfish.internal.data.ApplicationInfo.start(ApplicationInfo.java:352)
>>         at 
>> com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:500)
>>         at 
>> com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
>>         at 
>> org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535)
>>         at java.security.AccessController.doPrivileged(Native Method)
>>         at javax.security.auth.Subject.doAs(Subject.java:360)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557)
>>         at java.security.AccessController.doPrivileged(Native Method)
>>         at javax.security.auth.Subject.doAs(Subject.java:360)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846)
>>         at 
>> com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722)
>>         at 
>> org.glassfish.admin.rest.utils.ResourceUtil.runCommand(ResourceUtil.java:253)
>>         at 
>> org.glassfish.admin.rest.utils.ResourceUtil.runCommand(ResourceUtil.java:231)
>>         at 
>> org.glassfish.admin.rest.utils.ResourceUtil.runCommand(ResourceUtil.java:275)
>>         at 
>> org.glassfish.admin.rest.resources.TemplateListOfResource.createResource(TemplateListOfResource.java:133)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81)
>>         at 
>> org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151)
>>         at 
>> org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:171)
>>         at 
>> org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152)
>>         at 
>> org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:104)
>>         at 
>> org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:387)
>>         at 
>> org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:331)
>>         at 
>> org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:103)
>>         at 
>> org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:271)
>>         at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271)
>>         at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267)
>>         at org.glassfish.jersey.internal.Errors.process(Errors.java:315)
>>         at org.glassfish.jersey.internal.Errors.process(Errors.java:297)
>>         at org.glassfish.jersey.internal.Errors.process(Errors.java:267)
>>         at 
>> org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:297)
>>         at 
>> org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:254)
>>         at 
>> org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1028)
>>         at 
>> org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpContainer.service(GrizzlyHttpContainer.java:365)
>>         at 
>> org.glassfish.admin.rest.adapter.RestAdapter$2.service(RestAdapter.java:316)
>>         at 
>> org.glassfish.admin.rest.adapter.RestAdapter.service(RestAdapter.java:179)
>>         at 
>> com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)
>>         at 
>> com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)
>>         at 
>> org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)
>>         at 
>> org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)
>>         at 
>> org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)
>>         at 
>> org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
>>         at 
>> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
>>         at 
>> org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
>>         at 
>> org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
>>         at 
>> org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
>>         at 
>> org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
>>         at 
>> org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)
>>         at 
>> org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
>>         at 
>> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
>>         at 
>> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
>>         at 
>> org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
>>         at 
>> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
>>         at 
>> org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
>>         at java.lang.Thread.run(Thread.java:745)
>> Caused by: javax.ejb.TransactionRolledbackLocalException: Exception thrown 
>> from bean
>>         at 
>> com.sun.ejb.containers.EJBContainerTransactionManager.checkExceptionClientTx(EJBContainerTransactionManager.java:662)
>>         at 
>> com.sun.ejb.containers.EJBContainerTransactionManager.postInvokeTx(EJBContainerTransactionManager.java:507)
>>         at 
>> com.sun.ejb.containers.BaseContainer.postInvokeTx(BaseContainer.java:4566)
>>         at 
>> com.sun.ejb.containers.BaseContainer.postInvoke(BaseContainer.java:2074)
>>         ... 122 more
>> Caused by: java.lang.NullPointerException
>>         at 
>> org.hibernate.engine.transaction.internal.jta.JtaStatusHelper.getStatus(JtaStatusHelper.java:76)
>>         at 
>> org.hibernate.engine.transaction.internal.jta.JtaStatusHelper.isActive(JtaStatusHelper.java:118)
>>         at 
>> org.hibernate.engine.transaction.internal.jta.CMTTransaction.join(CMTTransaction.java:149)
>>         at 
>> org.hibernate.jpa.spi.AbstractEntityManagerImpl.joinTransaction(AbstractEntityManagerImpl.java:1602)
>>         at 
>> org.hibernate.jpa.spi.AbstractEntityManagerImpl.postInit(AbstractEntityManagerImpl.java:210)
>>         at 
>> org.hibernate.jpa.internal.EntityManagerImpl.<init>(EntityManagerImpl.java:91)
>>         at 
>> org.hibernate.jpa.internal.EntityManagerFactoryImpl.internalCreateEntityManager(EntityManagerFactoryImpl.java:345)
>>         at 
>> org.hibernate.jpa.internal.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:313)
>>         at 
>> org.apache.camel.component.jpa.JpaConsumer.doStart(JpaConsumer.java:503)
>>         at 
>> org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:61)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.startService(DefaultCamelContext.java:2869)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.doStartOrResumeRouteConsumers(DefaultCamelContext.java:3163)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.doStartRouteConsumers(DefaultCamelContext.java:3099)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:3029)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.safelyStartRouteServices(DefaultCamelContext.java:3042)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.startRouteService(DefaultCamelContext.java:2919)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.startRoute(DefaultCamelContext.java:843)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:2895)
>>         at 
>> org.apache.camel.impl.DefaultCamelContext.addRouteDefinitions(DefaultCamelContext.java:775)
>>         at 
>> org.apache.camel.builder.RouteBuilder.populateRoutes(RouteBuilder.java:397)
>>         at 
>> org.apache.camel.builder.RouteBuilder.addRoutesToCamelContext(RouteBuilder.java:311)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1081)
>>         at 
>> org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1153)
>>         at 
>> com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:4786)
>>         at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:656)
>>         at 
>> com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
>>         at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)
>>         at 
>> org.jboss.weld.ejb.AbstractEJBRequestScopeActivationInterceptor.aroundInvoke(AbstractEJBRequestScopeActivationInterceptor.java:46)
>>         at 
>> org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:52)
>>         at sun.reflect.GeneratedMethodAccessor876.invoke(Unknown Source)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
>>         at 
>> com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
>>         at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:608)
>>         at 
>> com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doCall(SystemInterceptorProxy.java:163)
>>         at 
>> com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:140)
>>         at sun.reflect.GeneratedMethodAccessor1069.invoke(Unknown Source)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:497)
>>         at 
>> com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:883)
>>         at 
>> com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:822)
>>         at 
>> com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:369)
>>         at 
>> com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:4758)
>>         at 
>> com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:4746)
>>         at 
>> com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212)
>>         ... 120 more
>>
>>
>>
>> This particular error goes away and the JPA component works if I change the 
>> transaction-type property in the persistence.xml file to "RESOURCE_LOCAL", 
>> but then, as expected the EJBs no longer work.
>>
>> The JPA component documentation says that the component will pull the 
>> transaction manager out of the CamelContext's registry.  However, when I 
>> stepped through the code in the debugger the registry did not have any items 
>> that implemented the 
>> org.springframework.transaction.PlatformTransactionManager interface that 
>> the JPA component appears to be looking for.
>>
>> I'm hoping I'm just missing some simple configuration tweak, but any 
>> help/ideas on where to look next would be greatly appreciated.
>>
>> Thanks,
>> -Rob
>>
>>
>
>
>
> --
> Claus Ibsen
> -----------------
> Red Hat, Inc.
> Email: cib...@redhat.com
> Twitter: davsclaus
> Blog: http://davsclaus.com
> Author of Camel in Action: http://www.manning.com/ibsen
> hawtio: http://hawt.io/
> fabric8: http://fabric8.io/



--
Claus Ibsen
-----------------
Red Hat, Inc.
Email: cib...@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen
hawtio: http://hawt.io/
fabric8: http://fabric8.io/

Reply via email to