jms-jca-provider with remote server jboss queues with transaction enabled in jboss-esb.xml file
maniv Nov 23, 2011 10:24 AMjms-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)
-----------------------------------