JMX MBeans не се вижда след внедряване

ОКОЛНА СРЕДА NetBeans 6.9.1, GlassFish 3.1, METRO 2.1

Искам да направя списък с налични уеб услуги, така че отправям заявка към JMX MBeanServer за *:type=WSEndpoint,*. Проблемът е, че има само ~56 Mbean след внедряване, а WSEndpoint beans не са регистрирани. Ако се свържа с JMXterm, броят MBean скача до ~380 и всички WSEndpoint bean-ове са видими. От JConsole не виждам никакви folder, но след стартиране на JMXterm виждам.

Дори да се обадя на уеб услугата, MBeans остават нерегистрирани. МЕТРО мониторингът е активиран по подразбиране и аз го оставих така; след разгръщането се показва конзолно съобщение INFO: Metro monitoring rootname successfully set to: amx:pp=/mon/server-mon[server],type=WSEndpoint,name=....

Какво прави JMXterm, така че всички MBeans да са видими? Извършва ли някакви извиквания на методи към MBeanServer? Има ли някакво решение, за да мога да получа достъп до WSEndpoint beans веднага след внедряването?


person Daniel Szalay    schedule 11.04.2011    source източник
comment
+1 просто за това, че ме информира за Jmxterm ;-)   -  person Joachim Sauer    schedule 11.04.2011


Отговори (2)


Можете да задействате регистрацията на всички AMX MBean с като изпълните JMX операцията bootAMX на MBean amx-support:type=boot-amx.

person Roland Huß    schedule 12.04.2011
comment
Благодаря, точно това търсех! За тези, които са нови за JMX, извикването е както следва: mBeanServer.invoke(new ObjectName("amx-support:type=boot-amx"), "bootAMX", new Object[0], new String[0]);. - person Daniel Szalay; 12.04.2011

Междувременно намерих отговора в Ръководството за потребители на METRO: 19.5. Бележки.

AMX mbean се създава лениво. Следователно, ако някой разположи крайна точка в GlassFish и след това потърси Metro WSEndpoint mbean с помощта на JConsole, има моменти, в които AMX mbean не се появява. За да го активирате, стартирайте asadmin GUI или CLI. Или използвайте jmxterm и издайте командата му домейни.

В някои случаи mbeans за крайни точки на Metro няма да се появят, докато крайната точка не получи първото си клиентско извикване.

WSClient mbeans може да се появи и изчезне бързо, ако мъничето се използва само за едно повикване, след което се затваря незабавно. Мънче, което използва надеждни съобщения или защитен разговор, обикновено остава активно по-дълго, тъй като най-вероятно ще се използва за множество повиквания.

Въпреки това, след като стартирах asadmin GUI или CLI, не помогнах, можех да го разреша само чрез свързване към JVM с JMXterm.

person Daniel Szalay    schedule 11.04.2011