HornetQ throws an IllegalArgumentException when wilcards used in topic names

Solution Unverified - Updated -

Issue

  • I am using wildcards in a jms topic name in order to receive every message whatever the destination.
  • I have an MDB that receives every message sent to a topic matching the wildcard expression. Messages sent to java:/messaging/A are both received by the consumers of java:/messaging/B and java:/messaging/all. No problem with that.
  • When invoke listAllSubscriptionsAsJson method on JConsole receive an exception as shown below :
ERROR [stderr] (pool-32-thread-6) java.lang.IllegalArgumentException: Invalid message queue name: jms.topic.A.messaging.#
ERROR [stderr] (pool-32-thread-6)  at org.hornetq.jms.client.HornetQDestination.decomposeQueueNameForDurableSubscription(HornetQDestination.java:122)
ERROR [stderr] (pool-32-thread-6)  at org.hornetq.jms.management.impl.JMSTopicControlImpl.listSubscribersInfosAsJSON(JMSTopicControlImpl.java:321)
ERROR [stderr] (pool-32-thread-6)  at org.hornetq.jms.management.impl.JMSTopicControlImpl.listAllSubscriptionsAsJSON(JMSTopicControlImpl.java:164)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.messaging.jms.JMSTopicControlHandler.executeRuntimeStep(JMSTopicControlHandler.java:101)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.AbstractRuntimeOnlyHandler$1.execute(AbstractRuntimeOnlyHandler.java:90)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.AbstractOperationContext.executeStep(AbstractOperationContext.java:440)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.AbstractOperationContext.doCompleteStep(AbstractOperationContext.java:322)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.AbstractOperationContext.completeStepInternal(AbstractOperationContext.java:229)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:224)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:194)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:115)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.jmx.model.ModelControllerMBeanHelper.execute(ModelControllerMBeanHelper.java:406)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.jmx.model.ModelControllerMBeanHelper.invoke(ModelControllerMBeanHelper.java:384)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.jmx.model.ModelControllerMBeanHelper.invoke(ModelControllerMBeanHelper.java:358)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.jmx.model.ModelControllerMBeanServerPlugin.invoke(ModelControllerMBeanServerPlugin.java:134)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.as.jmx.PluggableMBeanServerImpl.invoke(PluggableMBeanServerImpl.java:263)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.remotingjmx.protocol.v2.ServerProxy$InvokeHandler.handle(ServerProxy.java:915)
ERROR [stderr] (pool-32-thread-6)  at org.jboss.remotingjmx.protocol.v2.ServerCommon$MessageReciever$1.run(ServerCommon.java:152)
ERROR [stderr] (pool-32-thread-6)  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
ERROR [stderr] (pool-32-thread-6)  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
ERROR [stderr] (pool-32-thread-6)  at java.lang.Thread.run(Thread.java:744)

Is this a bug or is there a problem in my configuration ? aren't wildcards officially supported in queue/topic names ?

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 6.1.1

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.