commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Burrell Donkin (JIRA)" <>
Subject [jira] Resolved: (BETWIXT-57) Class loader problem in JBoss version 4.0.4GA
Date Sun, 07 Jan 2007 18:33:27 GMT


Robert Burrell Donkin resolved BETWIXT-57.

    Resolution: Fixed

Fix committed.

> Class loader problem in JBoss version 4.0.4GA
> ---------------------------------------------
>                 Key: BETWIXT-57
>                 URL:
>             Project: Commons Betwixt
>          Issue Type: Bug
>         Environment: JBoss application server version 4.0.4GA. Probably affects most
versions of JBoss
>            Reporter: Surjit Sen
>            Priority: Critical
> When using betwixt in a JBoss application, "Class not found" exceptions get thrown when
Class.forName methods are called in classes org.apache.commons.betwixt.digester.ElementRule
and org.apache.commons.betwixt.digester.ClassRule. Specifically the Class.forName method uses
the system class loader to load classes and in JBoss the classpath normally does not contain
the application jar files. The fix is very simple. The Class.forName method calls in both
the classes were replaced with the following code lines in ElementRule and similar changes
were made in ClassRule as well. This fix ensures that the appropriate class loader is used
for loading classes and is similar to the fix made in log4j.
>                 ClassLoader loader = Thread.currentThread().getContextClassLoader();
>                 if (loader == null) {
>                 	loader = Class.forName(implementationClass).getClassLoader();
>                     //Class clazz = Class.forName(implementationClass);
>                 }
>                 Class clazz = loader.loadClass(implementationClass);
>                 descriptor.setImplementationClass(clazz);

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message