Provides MBean server references. There are no instances of
this class.
Since JMX 1.2 this class makes it possible to replace the default
MBeanServer implementation. This is done using the
MBeanServerBuilder class.
The class of the initial MBeanServerBuilder to be
instantiated can be specified through the
javax.management.builder.initial system property.
The specified class must be a public subclass of
MBeanServerBuilder , and must have a public
empty constructor.
The javax.management.builder.initial system property is
consulted every time a new MBeanServer needs to be created, and the
class pointed to by that property is loaded. If that class is different
from that of the current MBeanServerBuilder, then a new MBeanServerBuilder
is created. Otherwise, the MBeanServerFactory may create a new
MBeanServerBuilder or reuse the current one.
If the class pointed to by the property cannot be
loaded, or does not correspond to a valid subclass of MBeanServerBuilder
then an exception is propagated, and no MBeanServer can be created until
the javax.management.builder.initial system property is reset to
valid value.
The MBeanServerBuilder makes it possible to wrap the MBeanServers
returned by the default MBeanServerBuilder implementation, for the purpose
of e.g. adding an additional security layer.
Provides MBean server references. There are no instances of this class.
Since JMX 1.2 this class makes it possible to replace the default MBeanServer implementation. This is done using the MBeanServerBuilder class. The class of the initial MBeanServerBuilder to be instantiated can be specified through the javax.management.builder.initial system property. The specified class must be a public subclass of MBeanServerBuilder , and must have a public empty constructor.
By default, if no value for that property is specified, an instance of javax.management.MBeanServerBuilder is created. Otherwise, the MBeanServerFactory attempts to load the specified class using Thread.currentThread().getContextClassLoader() , or if that is null, Class.forName() . Then it creates an initial instance of that Class using newInstance() . If any checked exception is raised during this process (e.g. ClassNotFoundException , InstantiationException ) the MBeanServerFactory will propagate this exception from within a RuntimeException.
The javax.management.builder.initial system property is consulted every time a new MBeanServer needs to be created, and the class pointed to by that property is loaded. If that class is different from that of the current MBeanServerBuilder, then a new MBeanServerBuilder is created. Otherwise, the MBeanServerFactory may create a new MBeanServerBuilder or reuse the current one.
If the class pointed to by the property cannot be loaded, or does not correspond to a valid subclass of MBeanServerBuilder then an exception is propagated, and no MBeanServer can be created until the javax.management.builder.initial system property is reset to valid value.
The MBeanServerBuilder makes it possible to wrap the MBeanServers returned by the default MBeanServerBuilder implementation, for the purpose of e.g. adding an additional security layer.