[JMS]Deploying multiple DestinationManagers
jskeet Feb 10, 2005 3:50 AM[Background: JBoss 4.0.1, JDK 1.5.0.1, Windows XP Pro]
I'm trying to write an application which can be added to an absolutely stock JBoss installation, but which will use an extra (named) DestinationManager, with a different persistence manager etc from the default.
I've created the destination manager, persistence manager, state manager and message cache, just by adding ",name=MyDestinationManager" etc to a copy of each of the relevant sections. I've then created a queue with a specific name, and told it to use the new DestinationManager.
I also have an EAR which contains an MDB which tries to use the queue. Unfortunately, at runtime I get:
08:10:38,763 WARN [JMSContainerInvoker] JMS provider failure detected:
javax.jms.InvalidDestinationException: The destination QUEUE.MyQueueName does not exist !
at org.jboss.mq.server.ClientConsumer.addSubscription(ClientConsumer.java:131)
at org.jboss.mq.server.JMSDestinationManager.subscribe(JMSDestinationManager.java:613)
at org.jboss.mq.server.JMSServerInterceptorSupport.subscribe(JMSServerInterceptorSupport.java:297)
at org.jboss.mq.security.ServerSecurityInterceptor.subscribe(ServerSecurityInterceptor.java:142)
(etc)
Looking at the server log, it looks like at least something is working. Shortly before the exception (and just after creating the DLQHandler), there are the following lines:
2005-02-10 08:10:38,638 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] context: javax.naming.InitialContext@fade06
2005-02-10 08:10:38,638 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] jndiSuffix: MyQueueName
2005-02-10 08:10:38,638 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Got destination type Queue for MyMDB
After that there's some connection factory and StdServerSessionPool logging, then:
2005-02-10 08:10:38,747 DEBUG [org.jboss.jms.asf.StdServerSessionPool] Server Session pool set up
2005-02-10 08:10:38,747 DEBUG [org.jboss.ejb.plugins.jms.JMSContainerInvoker] Server session pool: org.jboss.jms.asf.StdServerSessionPool@6159c4
2005-02-10 08:10:38,763 WARN [org.jboss.ejb.plugins.jms.JMSContainerInvoker] JMS provider failure detected:
javax.jms.InvalidDestinationException: The destination QUEUE.MyQueueName does not exist !
at org.jboss.mq.server.ClientConsumer.addSubscription(ClientConsumer.java:131)
(etc)
SUSPECTED ROOT CAUSE:
When catching the exception in the debugger, it looks like it's using the wrong DestinationManager - in other words, the default one.
So, am I missing a step, does JBoss not support multiple DestinationManagers, or is it likely to be a bug I could help fix?
Jon Skeet