> How does the class loading work? I was under the
> impression that all the jars placed under the
> deployment directory are used for that particular
> application....so placing the Sun's jdmkrt.jar in my
> applications deployment directory should resolve the
No, the JBossMX will be loaded first (hard coded library for the microkernel) and its definition of ObjectName will be used. This is the default deployment behavior.
How are you using JDMK with JBoss?
Thanks for the clarification.
I am using JBoss as a Client in this case connecting
to a remote machine where the JDMK management
agent Server is running and controling services installed on that machine.
Earlier I used to have a Tomcat 4.0 acting as a Client
which used to work fine but now that I replaced the Tomcat with JBoss I am running into this problem.
I tried replacing the JDMK Mgmt Agent Server jar file with newer version of ObjectName.class I get this error.
"java.io.IOException: HTTP request failed"
So what version of the JMX spec does the JDMK you use implement? I understood from the document you linked to in your original post that there's a bug in JMX RI 1.2 serialization that breaks the serialization compatibility that was set in JMX 1.1 specification.. ? But it doesn't mention JDMK specifically.
The only work around to the serialization problem I can think of is to build your own connector to communicate between JBoss and JDMK, one that works around the serialization incompatibilites by not trying to use Java's serialization mechanism but passes the relevant instance state via other means (thus avoiding ObjectOutputStream).