9 Replies Latest reply: Mar 25, 2011 7:12 AM by Pulokesh Goswami RSS

JMS-JCA Provider

Pulokesh Goswami Newbie

Hi All

 

I have to esb applications in to machines exchanging messages. I am using JMS router to route messages between the application. As long as I use JMS provider its works fine. But I change the providers to jms-jca-provider the JMSRouter throws a javax.transaction.RollbackException and the message is not recieved by the other application.

 

Heres is my configuration for the revieving queue

<jms-jca-provider connection-factory="ConnectionFactory" name="JMSProviderMPInboundRLIJMS">

   <jms-bus busid="JMSChannelMPInboundRLIJMS">

    <jms-message-filter dest-name="queue/JMSQueueMPInboundRLIJMS" dest-type="QUEUE"/>

   </jms-bus>

  </jms-jca-provider>

 

My JMS router configuration looks like this

ConfigTree jmsConfig = new ConfigTree("JmsRouter");

jmsConfig.setAttribute("jndiName", "queue/JMSQueueMPInboundRLIJMS");

jmsConfig.setAttribute(JMSEpr.JNDI_URL_TAG ,"10.11.200.163:1099");

jmsConfig.setAttribute(JMSEpr.CONNECTION_FACTORY_TAG , "ConnectionFactory");

jmsConfig.setAttribute("unwrap" , "false");

jmsConfig.setAttribute(JMSRouter.PERSISTENT_ATTR , "true");

jmsConfig.setAttribute(JMSRouter.SECURITY_PRINCIPAL , "guest");

jmsConfig.setAttribute(JMSRouter.SECURITY_CREDITIAL , "guest");

 

I am using jboss-5.1.0.GA.

What can be the problem?

 

Here is the exception Log

14:46:40,750 ERROR [ExceptionUtil] ConnectionEndpoint[xf-1mbefnlg-1-2qv5enlg-n2unr5-f6k5ba] sendTransaction [lr1-m68xgnlg-1-2qv5enlg-n2unr5-f6k5ba]

javax.jms.IllegalStateException: Cannot find session with id vj2-h58xgnlg-1-oovzdnlg-79hlxi-j4k5ba

at org.jboss.jms.server.endpoint.ServerConnectionEndpoint.processTransaction(ServerConnectionEndpoint.java:835)

at org.jboss.jms.server.endpoint.ServerConnectionEndpoint.sendTransaction(ServerConnectionEndpoint.java:489)

at org.jboss.jms.server.endpoint.advised.ConnectionAdvised.org$jboss$jms$server$endpoint$advised$ConnectionAdvised$sendTransaction$aop(ConnectionAdvised.java:101)

at org.jboss.jms.server.endpoint.advised.ConnectionAdvised$sendTransaction_N3268650789275322226.invokeTarget(ConnectionAdvised$sendTransaction_N3268650789275322226.java)

at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)

at org.jboss.jms.server.container.SecurityAspect.handleSendTransaction(SecurityAspect.java:195)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at org.jboss.aop.advice.PerInstanceAdvice.invoke(PerInstanceAdvice.java:122)

at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

at org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)

at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

at org.jboss.jms.server.endpoint.advised.ConnectionAdvised.sendTransaction(ConnectionAdvised.java)

at org.jboss.jms.wireformat.ConnectionSendTransactionRequest.serverInvoke(ConnectionSendTransactionRequest.java:82)

at org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143)

at org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:891)

at org.jboss.remoting.transport.local.LocalClientInvoker.invoke(LocalClientInvoker.java:106)

at org.jboss.remoting.Client.invoke(Client.java:1724)

at org.jboss.remoting.Client.invoke(Client.java:629)

at org.jboss.remoting.Client.invoke(Client.java:617)

at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:189)

at org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:160)

at org.jboss.jms.client.delegate.ClientConnectionDelegate.org$jboss$jms$client$delegate$ClientConnectionDelegate$sendTransaction$aop(ClientConnectionDelegate.java:221)

at org.jboss.jms.client.delegate.ClientConnectionDelegate$sendTransaction_N3268650789275322226.invokeTarget(ClientConnectionDelegate$sendTransaction_N3268650789275322226.java)

at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:111)

at org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:92)

at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86)

at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)

at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86)

at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)

at org.jboss.jms.client.delegate.ClientConnectionDelegate.sendTransaction(ClientConnectionDelegate.java)

at org.jboss.jms.tx.ResourceManager.sendTransactionXA(ResourceManager.java:667)

at org.jboss.jms.tx.ResourceManager.commit(ResourceManager.java:367)

at org.jboss.jms.tx.MessagingXAResource.commit(MessagingXAResource.java:255)

at com.arjuna.ats.internal.jta.resources.arjunacore.XAResourceRecord.topLevelOnePhaseCommit(XAResourceRecord.java:811)

at com.arjuna.ats.arjuna.coordinator.BasicAction.onePhaseCommit(BasicAction.java:2656)

at com.arjuna.ats.arjuna.coordinator.BasicAction.End(BasicAction.java:1784)

at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:94)

at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:177)

at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1423)

at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:137)

at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:75)

at org.jboss.resource.adapter.jms.inflow.JmsServerSession$XATransactionDemarcationStrategy.end(JmsServerSession.java:657)

at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:243)

at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205)

at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

14:46:40,754 ERROR [JmsServerSession] org.jboss.resource.adapter.jms.inflow.JmsServerSession@148226f failed to commit/rollback

javax.transaction.RollbackException: [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] [com.arjuna.ats.internal.jta.transaction.arjunacore.commitwhenaborted] Could not commit transaction.

at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1435)

at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:137)

at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:75)

at org.jboss.resource.adapter.jms.inflow.JmsServerSession$XATransactionDemarcationStrategy.end(JmsServerSession.java:657)

at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:243)

at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205)

at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)