Как указать имя mbean с аннотацией @MBean

У меня есть архив SAR для JBoss и один зарегистрированный MBean в jboss-service.xml, Теперь я хочу перейти на TomEE и использовать стандартные javax.management аннотирование @MBean, но я не могу узнать, как указать его имя, и он создает с именем по умолчанию. Может кто-нибудь мне помочь?

2 ответа

Решение

Вы должны указать имя при регистрации компонента, как описано здесь:

  MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); 
  ObjectName name = new ObjectName("com.example.mbeans:type=Hello"); 
  Hello mbean = new Hello(); 
  mbs.registerMBean(mbean, name); 

TomEE пока не поддерживает его (см. https://issues.apache.org/jira/browse/TOMEE-1668), но DeltaSpike поддерживает интеграцию CDI и поддерживает ее: https://github.com/apache/deltaspike/blob/1572c07eb8d5f892308e1060a9fa1ccdbf18435e/deltaspike/core/api/src/main/java/org/apache/deltaspike/core/api/jmx/MBean.java#L57

Другие вопросы по тегам