[jopr-dev] RHQ-2059

John Mazzitelli mazz at redhat.com
Wed Jun 17 15:25:01 EDT 2009


I just checked in the root plugin classloader stuff. Lots of changes. I did a full enterprise clean build and ran the full test suite (took 16 minutes to build) - all tests pass. I ran the agent and did a quick smoke test - imported RHQ Agent, Jopr Server and Postgres. Things look to be working (this did NOT magically happen :) I had lots of code/fix iterations to get this right).

Here's a few things you need to know:

1) Somehow we allowed plugins to access the clientapi module (i.e. some plugins had a dependency on clientapi jar). This is wrong and should not have been. clientapi is strictly for agent<->server. The plugins should only access the plugin-api jar (plugin-api is for agent<->plugins). I removed all of those dependencies both RHQ and Jopr plugins and things build - all but ONE! The JbossAS-5 plugin. If you try to run that on the latest code, you will get a NoClassDefFoundError - you need to refactor out all dependency on clientapi.

2) I don't think embedded Jopr needs to do anything special - the default should be that the root plugin classloader does not hide any classes from the plugins (everything should load like it did before). I need the embedded jopr guys to smoke test this.

3) tomcat plugin needs testing due to my removal of its dependency on the platform plugin (again, that was not supposed to be - I fixed that). Jay - let me know how that testing goes.  Just inventory things and see if you can collect metrics and maybe execute a command. If you can without getting any NoClassDefFoundErrors, you are good to go.

Any problems, ping me. Let me know if you get any NoClassDefFoundErrors now. I'm now off to trying to get the "classloader per resource instance" to work.



More information about the jopr-dev mailing list