2012-02-02 38 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