Just noticed that the previous statement is not so clear. derby can not find the class DerbyUserAuthenticator in geronimo-derby, because geronimo-derby.jar is loaded by system-database, and derby related jars are loaded by derby, meanwhile system-database declares dependency on derby, which makes derby is the parent classloader of system-database.
---------- Forwarded message ---------- From: han hongfang <[email protected]> Date: Tue, Dec 22, 2009 at 12:27 AM Subject: The organization of derby related modules To: [email protected] Hi all, I'm working on https://issues.apache.org/jira/browse/GERONIMO-4296 and https://issues.apache.org/jira/browse/GERONIMO-4878. To enable derby user authentication using user-defined class, I write a new class DerbyUserAuthenticator and put it into plugins\system-database\geronimo-derby project. I encountered ClassNotFoundException when I first ran it, because Derby uses Class.forName() to load the user-defined class DerbyUserAuthenticator, and meanwhile geronimo-derby depends on org.apache.geronimo.configs.derby. I'm wondering why geronimo-derby is served as a module of system-database, rather than organizing it together with plugins\derby as just what Geronimo does for plugins\mejb and plugins\axis2 etc, and then making org.apache.geronimo.configs.derby depend on geronimo-derby. Does someone have history information to share? BTW, I work on server branch 2.1 -- Best regards, Han Hong Fang -- Best regards, Han Hong Fang
