MDB on remote queue
segerss Jul 14, 2003 10:33 AMHi
I am trying to connect an MDB to a queue located on another server, using JBoss 3.2. On deployment I get this exception, which is repeated every xx seconds.
javax.jms.InvalidDestinationException: The destination QUEUE.mqTest1 does not exist !
at org.jboss.mq.server.ClientConsumer.addSubscription(ClientConsumer.java:135)
at org.jboss.mq.server.JMSDestinationManager.subscribe(JMSDestinationManager.java:611)
at org.jboss.mq.server.JMSServerInterceptorSupport.subscribe(JMSServerInterceptorSupport.java:296)
at org.jboss.mq.security.ServerSecurityInterceptor.subscribe(ServerSecurityInterceptor.java:150)
at org.jboss.mq.server.TracingInterceptor.subscribe(TracingInterceptor.java:677)
at org.jboss.mq.server.JMSServerInvoker.subscribe(JMSServerInvoker.java:298)
at org.jboss.mq.il.jvm.JVMServerIL.subscribe(JVMServerIL.java:315)
at org.jboss.mq.Connection.addConsumer(Connection.java:1082)
at org.jboss.mq.SpyConnectionConsumer.(SpyConnectionConsumer.java:73)
at org.jboss.mq.SpyConnection.createConnectionConsumer(SpyConnection.java:113)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.innerCreate(JMSContainerInvoker.java:562)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.startService(JMSContainerInvoker.java:579)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker$ExceptionListenerImpl.onException(JMSContainerInvoker.java:1079)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker$1.run(JMSContainerInvoker.java:591)
There does exist a queue names queue/mqTest1 on the remote machine (if I specify another name I get a NameNotFoundException).
Here are some details about the testapp:
The mdb:
ejb-jar.xml:
<message-driven >
[CDATA[]]
<display-name>MQTest1 MDB1</display-name>
<ejb-name>ejb/mqTest1/MDB1</ejb-name>
<ejb-class>qmtest1.Test1MDB</ejb-class>
<transaction-type>Container</transaction-type>
<acknowledge-mode>Auto-acknowledge</acknowledge-mode>
<message-driven-destination>
<destination-type>javax.jms.Queue</destination-type>
<subscription-durability>NonDurable</subscription-durability>
</message-driven-destination>
</message-driven>
jboss.xml:
<message-driven>
<ejb-name>ejb/mqTest1/MDB1</ejb-name>
<destination-jndi-name>/queue/mqTest1</destination-jndi-name>
</message-driven>
Modifications to the 'all' configuration:
deploy/jms/jms-ds.xml: added:
RemoteJMSProvider
org.jboss.jms.jndi.JBossMQProvider
burgundy:1099
java:/XAConnectionFactory
java:/XAConnectionFactory
conf/standardjboss.xml:
Replaced
RemoteJMSProvider
with
RemoteJMSProvider
in the message-driven-bean invoker-proxy-binding.
The queue (deployed on burgundy):
<depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager