ModelMBean interface is used to expose its management data,
operations and notifications for use by the management system.
This interface provides a management template for managed resources.
The adaptors will interact with the ModelMBean through the JMX agent(server).
It will find the managed resource provided attributes and operations through
the MBeanInfo object. It find the behavior details about the supported
attribute, operations and notifications through this ModelMBean interface.
This interface must be implemented by the ModelMBeans.
An implementation of this interface must be shipped with every JMX Agent.
Java resources wishing to be manageable instatiate the ModelMBean using
the MBeanServer's createMBean method. The resource then sets the
ModelMBeanInfo (with Descriptors) for the ModelMBean instance. The
attributes and operations exposed via the ModelMBeanInfo for the ModelMBean
are accessible from Mbeans, connectors/adapters like other MBeans. Through
the ModelMBeanInfo Descriptors, values and methods in the managed
application can be defined and mapped to attributes and operations of the
ModelMBean. This mapping can be defined during development in an XML
formatted file or dynamically and programmatically at runtime.
Every ModelMBean which is instantiated in the MBeanServer becomes manageable:
its attributes and operations become remotely accessible through the
connectors/adaptors connected to that MBeanServer. A Java object cannot be
registered in the MBeanServer unless it is a JMX compliant MBean. By
instantiating a ModelMBean, resources are guaranteed that the MBean is valid.
MBeanException and RuntimeOperatiosException must be thrown on every public
method. This allows for wrappering exceptions from distributed communications
(RMI, EJB, etc.). These exceptions do not have to be thrown by the implementation
|