Stephen McConnell wrote:
Niclas Hedhman wrote:
On Tuesday 30 December 2003 21:42, Hamilton Verissimo de Oliveira (Engenharia - SPO) wrote:
Let's try to push the JSR 77 within this development.
Not so sure about this. I haven't read the full spec, but doesn't it sound like, if you are JMX compatible, then JSR-77 compliant tools can "manage you"?
From the spec:
The scope JSR77.1.2 is limited to the management of J2EE servers, application components that are deployed onto a J2EE server and resources which provide the J2EE Standard Services. The scope of the information and operations required by the specification is limited to that required to enable basic functionality for the following:
• Discovery - discovering and navigating the managed objects on a managed system
• Events - receiving notifications of important events that occur on managed objects
• State - observing and controlling the running state of managed objects
• Performance - monitoring basic performance statistics of managed objects
The J2EE Management Model is a specification of the attributes, operations and architecture of the managed objects required by compliant J2EE platform implementations. The model is designed to be interoperable with a variety of industry standard management systems and protocols.
The Management EJB (MEJB) component (Chapter JSR77.7, “J2EE Management EJB Component”) provides interoperable remote access of the model to J2EE application components. All compliant implementations must support the MEJB component.
The requirements of the J2EE Management Model are specified by the following chapters:
• Chapter JSR77.3, “Managed Objects” specifies the managed object types required by the J2EE Management Model. The J2EE product provider must implement the managed objects described in this chapter. • Chapter JSR77.4, “Events” specifies the EventProvider model which specifies the requirements of managed objects that support event notification. • Chapter JSR77.5, “State Management” specifies the StateManageable model which specifies the requirements of managed objects that support state manipulation. • Chapter JSR77.6, “Performance Monitoring” specifies the StatisticProvider model which specifies the requirements of managed objects that provide performance data.
The specification of the models includes the UML diagrams as well as the textual specification of the metadata.
...
Everything derives from J2EEManagedObject (which is more than an MBean) and where some of the JMX generic limitations are addressed. For example, a J2EEManagedObject exposes Mandatory Key Properties and one of these is the name of the "parent" managed object. What this is means is that 77 (amongst other things) specifies "a simple mechanism to define a hierarchy of managed object".
For example, if Merlin deploys a component which happens to be a servlet, then Merlin needs to take care of exposing the servlet managed object as a child of a partent managed object that must be derived from either a WebModule, J2EEApplication, or a J2EEServer. No in practice a WebModule == war manager == multi servlet container (not a good match). So how about J2EEApplication, well this defines a collection of J2EEModules (or which a ServletModule is derived). This would suggest that a Block and Appliance are both represented as J2EEModules. To turn this into Merlin territory we would need to define an abstract MerlinModule as a sub-types of a J2EEModules and derived MerlinContainmentModule and MerlinDeploymentModule. The benefit of diriving from J2EEModules is that J2EEModules can contain other J2EEManagedObject instances (which includes J2EEModules). This gives us the hierachy we need to represent the Merlin containment model. The Merlin Kernel would expose itself as a J2EEApplication which in turn would be exposed inside a J2EEServer.
BZZZT -
J2EEModule does not aggregate - Steve needs to spend more time looking at the spec.
Stephen.
At least that's my take on things.
Stephen.
--
Stephen J. McConnell mailto:[EMAIL PROTECTED]
|------------------------------------------------| | Magic by Merlin | | Production by Avalon | | | | http://avalon.apache.org/merlin | | http://dpml.net/ | |------------------------------------------------|
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]