1 Reply Latest reply on Apr 1, 2011 2:42 AM by pulokesh

    jms-jca provider

    pulokesh

      I have asked this question in ESB forum(http://community.jboss.org/message/595549#595549). They have redirected me here saying its a messaging bug. So I am posting this here again.

       

      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)

        • 1. jms-jca provider
          pulokesh

          I would appreciate If some body can tell me if this is really a bug in Jboss messaging and if so if it is fixed in any jboss messaging version.