Hello,

in MX4J there is a feature where you can define a *MBeanDescription class, which contains additional information for display on the management console. The process is detailed at http://mx4j.sourceforge.net/docs/bk01ch02.html#d0e190

Unfortunately that feature doesn't work with Phoenix and I suspect it may be a classloader issue. Here's what the MX4J developer Simone Bordet says to how the MBeanDescription class is located:

== BEGIN Simone Bordet

The *MBeanDescription class must be in the same package of the mbean implementation class, and it is loaded using the same initiating classloader (not the defining classloader) that loaded the mbean implementation class.

For example if the mbean is registered using:

MBeanServer server = ...;
server.createMBean("my.package.MyServiceImpl", objectName, null);

then the classloader used is the one returned by

server.getClass().getClassLoader();

and will be used to load both the mbean implementation class and the *MBeanDescription class.

Basically the same classloader that can load the mbean implementation class should be able to load also the *MBeanDescription class.
Be careful not to load mx4j.MBeanDescription(Adapter) with 2 different classloaders, since there is a check like this one

loadedDescription instanceof mx4j.MBeanDescription

== END Simone Bordet

Maybe there is something wrong in Phoenix? It does not appear to be a problem in MX4J, as supposedly there the feature works. At least 80% of it, the remaining 20% having to do with correct display of constructors are a xdoclet problem and a fix has been sent to them.

Kind regards,

Ulrich

--
Ulrich Mayring
DENIC eG, Systementwicklung


--
To unsubscribe, e-mail: <mailto:avalon-phoenix-dev-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:avalon-phoenix-dev-help@;jakarta.apache.org>

Reply via email to