2012-02-02 28 views
1

我试图用这个代码:jboss7 - 我如何获得队列中的消息数量?

MBeanServer platformMBeanServer = java.lang.management.ManagementFactory 
      .getPlatformMBeanServer(); 
platformMBeanServer.getAttribute(new javax.management.ObjectName(
         "jboss.messaging.destination:service=Queue,name=" + QUEUE_NAME), 
         "MessageCount"); 

但我得到这个错误:

javax.management.InstanceNotFoundException: jboss.messaging.destination:service=Queue,name=queue/TestQ 

我看了所有网站上也没有找到什么,请帮助...

+0

您是否找到任何解决方案?我有同样的问题。 – user1079877 2015-09-05 07:42:35

回答

0

为什么要通过mbean服务器?您可以连接到jboss消息服务器,并询问队列中有多少消息。

+0

我研究了这个选项,使用JMS的唯一方法是从队列中读取所有消息并对它们进行计数,如果您有一个非常大的队列(我有),这将非常昂贵。 – Tomer 2012-02-05 08:52:46