javax.management.loading (Java SE 15 & JDK 15) (original) (raw)
Provides the classes which implement advanced dynamic loading. See the chapter Advanced Dynamic Loading in the JMX Specification.
An MBean that is of a subclass of ClassLoader can be used as a class loader to create other MBeans via the method MBeanServer.createMBean(String, ObjectName, ObjectName, Object[], String[]), and to instantiate arbitrary objects via the method MBeanServer.instantiate(String, ObjectName, Object[], String[]). The MLet class is an example of such an MBean. It is a URLClassLoader, so the list of URLs to load classes from can be configured.
Additionally, an MLet
can read a configuration file that specifies a set of MBeans to be registered in the same MBean Server as the MLet
.
Every MBean Server has a class loader repository containing all MBeans registered in that MBean Server that are of a subclass of ClassLoader. The class loader repository is used by the forms of thecreateMBean
and instantiate
methods in the MBeanServer interface that do not have an explicit loader parameter. It is also used by the MLet
class when it does not find a class in its own set of URLs.
If an MBean implements the interface PrivateClassLoader, then it is not added to the class loader repository. The classPrivateMLet is a subclass of MLet
that implementsPrivateClassLoader
.
Since:
1.5
See Also:
JMX Specification, version 1.4
- Interface Summary
Interface Description ClassLoaderRepository Instances of this interface are used to keep the list of ClassLoaders registered in an MBean Server. MLetMBean Exposes the remote management interface of the MLet MBean. PrivateClassLoader Marker interface indicating that a ClassLoader should not be added to the ClassLoaderRepository.