MBeans înregistrate sau instanțiate și MXBeans

Java 8 introduce o modificare de comportament pentru cerinţele de vizibilitate pentru interfeţele care sunt folosite pentru a crea MBean-uri sau MXBean-uri. Toate interfeţele MBean şi MXBean trebuie să fie publice. Anterior versiunii Java 8, au fost permise interfeţe non-publice, deşi caietul de sarcini a definit că ar trebui să fie publice.

Setarea proprietăţii de sistem jdk.jmx.mbeans.allowNonPublic face ca subsistemul de gestionare să folosească vechiul comportament, permiţând interfeţe de gestionare non-publice. Această proprietate este considerată a fi de tranziţie şi ar putea fi înlăturată în ediţiile ulterioare.

Pentru că încheierea numelui de interfaţă MBean cu MBean este mai degrabă o convenţie decât o cerinţă, orice invocare a metodei MBeanServer registerMBean sau a metodei createMBean este de asemenea semnalată pentru a evidenţia această diferenţă de Java 8 când creaţi bean-urile de gestionare. Dacă interfeţele dumneavoastră de bean-uri de gestionare nu respectă convenţiile menţionate anterior, verificaţi manual că utilizează interfeţe public-e.

Pentru informaţii suplimentare, consultaţi Pachetul javax.management în documentaţia Java.