[
http://issues.apache.org/jira/browse/LOGGING-25?page=comments#action_12459088 ]
Simon Kitching commented on LOGGING-25:
---------------------------------------
Applying this patch would cause some undesirable side-effects. For example,
method logClassLoaderEnvironment uses this method to print diagnostic info.
With this patch, we would report that a certain class was loaded from the
system classloader when it is really loaded from the bootclassloader.
I think it's better to fix the place(s) where we try to dereference this loader
without checking for null. Presumably you get an exception with a stack trace
when this occurs. Can you please run the standard JCL 1.1.1 release with the
following code and post the resulting exception? (please also include the
output of "java -version")
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class Tester {
public static Log log = LogFactory.getLog("foo");
public static void main(String[] args) {
log.error("testing");
}
}
java -Xbootclasspath/a:commons-logging-1.1.1.jar Tester
BTW, running the 1.1.1 release on Linux/java1.5 using
-Xbootclasspath/a:commons-logging-1.1.1.jar works fine. I'm pretty sure the
Apple JVM is just the Sun source code licensed by Apple and tweaked, so don't
know what could be causing a difference on Apple.
Thanks,
Simon
> [logging] call to getClassLoader() in LogFactoryImpl not checked for null
> -------------------------------------------------------------------------
>
> Key: LOGGING-25
> URL: http://issues.apache.org/jira/browse/LOGGING-25
> Project: Commons Logging
> Issue Type: Bug
> Affects Versions: 1.0.4
> Environment: Operating System: other
> Platform: Other
> Reporter: Luke Sleeman
>
> In line 374 of LogFactoryImpl.java getClassLoader() is called:
> logInterface = this.getClass().getClassLoader().loadClass(LOG_INTERFACE);
> However, the docs for getClassLoader() state that some implementations may use
> null to return the system classloader. This occurs under CrEme a JVM for the
> PocketPC platform which some of our products run under, causing a null pointer
> exception. Perhaps it would be better to change line 374 to read:
> logClass = loadClass(LOG_INTERFACE);
> which seems to solve the problems I have been having. At any rate calls to
> getClassLoader() should be checked to ensure that they haven't returned null.
> In addition the error that I got:
> org.apache.commons.logging.LogConfigurationException:
> org.apache.commons.logging.LogConfigurationException:
> java.lang.NullPointerException (Caused by java.lang.NullPointerException)
> (Caused by org.apache.commons.logging.LogConfigurationException:
> java.lang.NullPointerException (Caused by java.lang.NullPointerException))
> Certianly wasnt very helpfull for figuring out what is going on.
> - Luke
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]