A manageable resource can be a "Servlet, JSP, EJB, Java class, Java method,
Java variable, or any legacy non-Java applications". A JMX manageable
resource is developed in Java, or at least offers a Java wrapper, and has
been instrumented so that it can be managed by JMX-compliant applications.
The instrumentation of a manageable resource is provided by one or more Managed
Beans, or MBeans. The instrumentation level provides a specification for defining
the MBeans. In addition, the instrumentation level also specifies a notification mechanism
which allows MBeans to generate and propogate notification events to components
of other levels. (Notification model in JMX is explained in later sections.)
What is an MBean ?
Managed Bean (MBean) represents a manageable resource. An MBean is a
Java object, which follows some semantics. The fields or properties
of this Java object are called attributes. The methods of this Java
object are called operations.
Definition of MBean
MBeans are the JMX objects which exposes the management information in the
form of attributes and operations.
Semantics for an MBean
An MBean must be a public, non-abstract class.
An MBean must have atleast one public constructor.
An MBean must implement its own corresponding MBean interface or implement
the javax.management.DynamicMBean interface.
Optionally, an MBean can implement the javax.management.NotificationBroadcaster interface.
Types of MBeans
MBeans can be classified into four types. They are