Есть ли способ для регистрации MBean с тем же (единственным) именем объекта для нескольких объектов одного класса? Каков более простой способ?Регистрация MBean с тем же (единственным) именем объекта для нескольких объектов одного класса
0
A
ответ
0
Нет, нет. Если вы попытаетесь зарегистрировать экземпляр с таким же именем другого, который уже был зарегистрирован, будет выброшен javax.management.InstanceAlreadyExistsException
.
Вы должны использовать другое имя для второго экземпляра следующим образом:
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
ObjectName name = new ObjectName("firstInstance:type=Hello");
Hello mbean = new Hello();
mbs.registerMBean(mbean, name);
ObjectName name2 = new ObjectName("secondInstance:type=Hello");
Hello mbean2 = new Hello();
mbs.registerMBean(mbean2, name2);