4 Replies Latest reply on Dec 15, 2011 7:11 PM by kconner

    jms-jca-provider with remote server jboss queues with transaction enabled in jboss-esb.xml file

    maniv

      jms-jca-provider with remote server jboss queues with transaction enabled in jboss-esb.xml file

       

      I am able to create connection to remote server queues.

      And i verified consumer count value with test_base_Q and test_txn_Q queues as count number '1'.

      Which makes clear that both queues are in remote server and have listener as well.

       

      The issue is .. When a esb unaware message (jms message) arrive at test_base_Q queue then the below depicted exception happens..

      by saying there is no administratively defined queue with name:queue/test_txn_Q....

       

      Kindly advice as soon as possible..

      I am preety sure test_txn_Q is existing in remote server. And i started the server where jboss-esb project exist after starting messaging server

       

      ----------------------------------------------

      <jms-jca-provider connection-factory="XAConnectionFactory"

         providerAdapterJNDI="java:/RemoteJMSProvider"

         name="dbsync.application.provider.${ProvoVsAacs_INTERFACE_NAME}">

         <jms-bus busid="jms.channel.gateway.${ProvoVsAacs_INTERFACE_NAME}">

          <jms-message-filter dest-name="queue/test_base_Q"

           dest-type="QUEUE" jms-security-credential="${ProvoVsAacs_INTERFACE_MSG_QUEUE_CREDENTIAL}"

           jms-security-principal="${ProvoVsAacs_INTERFACE_MSG_QUEUE_PRINCIPAL}"

           transacted="false" />

         </jms-bus>

         <jms-bus busid="jms.channel.secured.${ProvoVsAacs_INTERFACE_NAME}">

          <jms-message-filter dest-name="queue/test_txn_Q"

           dest-type="QUEUE" jms-security-credential="${ProvoVsAacs_INTERFACE_TXN_QUEUE_CREDENTIAL}"

           jms-security-principal="${ProvoVsAacs_INTERFACE_TXN_QUEUE_PRINCIPAL}"

           transacted="true" />

         </jms-bus>

         <activation-config>

          <property name="dLQMaxResent" value="${ProvoVsAacs_DLQMAX_RESENT}" />

         </activation-config>

        </jms-jca-provider>

       

      -------------------

      mbean adapter in jms-ds.xml

      -----------------------------------------

      <mbean code="org.jboss.jms.jndi.JMSProviderLoader"

      name="jboss.esb:service=JMSProviderLoader,name=RemoteJMSProvider">

             <attribute name="ProviderName">RemoteJMSProvider</attribute>

             <attribute name="ProviderUrl"></attribute>

             <attribute name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute>

             <attribute name="FactoryRef">XAConnectionFactory</attribute>

             <attribute name="QueueFactoryRef">XAConnectionFactory</attribute>

             <attribute name="TopicFactoryRef">XAConnectionFactory</attribute>

             <attribute name="Properties">

                 java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory

                 java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces

                 java.naming.provider.url=jnp://<remote_server>:1099

             </attribute>

        </mbean>

      -------------------------------------------

       

      Exception

      -------------------------------

      javax.jms.JMSException: There is no administratively defined queue with name:queue/test_txn_Q

      at org.jboss.jms.server.endpoint.ServerSessionEndpoint.createQueue(ServerSessionEndpoint.java:299)

      at org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$createQueue$aop(SessionAdvised.java:105)

      at org.jboss.jms.server.endpoint.advised.SessionAdvised$createQueue_6431069199924553036.invokeTarget(SessionAdvised$createQueue_6431069199924553036.java)

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

      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.SessionAdvised.createQueue(SessionAdvised.java)

      at org.jboss.jms.wireformat.SessionCreateQueueRequest.serverInvoke(SessionCreateQueueRequest.java:74)

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

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

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

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

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

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

      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.ClientSessionDelegate.org$jboss$jms$client$delegate$ClientSessionDelegate$createQueue$aop(ClientSessionDelegate.java:319)

      at org.jboss.jms.client.delegate.ClientSessionDelegate$createQueue_6431069199924553036.invokeTarget(ClientSessionDelegate$createQueue_6431069199924553036.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.ClientSessionDelegate.createQueue(ClientSessionDelegate.java)

      at org.jboss.jms.client.JBossSession.createQueue(JBossSession.java:250)

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

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

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

      at org.jboss.internal.soa.esb.rosetta.pooling.JmsSession$ExceptionHandler.invoke(JmsSession.java:492)

      at $Proxy244.createQueue(Unknown Source)

      at org.jboss.internal.soa.esb.rosetta.pooling.JmsSession.createQueue(JmsSession.java:221)

      at org.jboss.internal.soa.esb.couriers.JmsCourier.createMessageProducer(JmsCourier.java:400)

      at org.jboss.internal.soa.esb.couriers.JmsCourier.internalDeliver(JmsCourier.java:209)

      at org.jboss.internal.soa.esb.couriers.JmsCourier.deliver(JmsCourier.java:181)

      at org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl.deliver(TwoWayCourierImpl.java:189)

      at org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.attemptDelivery(ServiceInvoker.java:667)

      at org.jboss.soa.esb.client.ServiceInvoker$EPRInvoker.access$200(ServiceInvoker.java:569)

      at org.jboss.soa.esb.client.ServiceInvoker.post(ServiceInvoker.java:359)

      at org.jboss.soa.esb.client.ServiceInvoker.deliverAsync(ServiceInvoker.java:254)

      at org.jboss.internal.soa.esb.persistence.format.db.DBMessageStoreImpl.redeliver(DBMessageStoreImpl.java:415)

      at org.jboss.soa.esb.actions.MessageRedeliverer.process(MessageRedeliverer.java:74)

      at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:635)

      at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:589)

      at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:419)

      at org.jboss.soa.esb.listeners.ScheduleListener.onSchedule(ScheduleListener.java:117)

      at org.jboss.soa.esb.listeners.lifecycle.AbstractScheduledManagedLifecycle$1.onSchedule(AbstractScheduledManagedLifecycle.java:68)

      at org.jboss.soa.esb.schedule.SchedulerJob$ESBScheduledJob.execute(SchedulerJob.java:289)

      at org.quartz.core.JobRunShell.run(JobRunShell.java:203)

      at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:520)

      -----------------------------------