diff --git a/src/java/org/apache/commons/logging/LogFactory.java b/src/java/org/apache/commons/logging/LogFactory.java index 1707369..3d05b21 100644 --- a/src/java/org/apache/commons/logging/LogFactory.java +++ b/src/java/org/apache/commons/logging/LogFactory.java @@ -1341,6 +1341,13 @@ public abstract class LogFactory { return; } + try { + logDiagnostic("Extension directories: " + System.getProperty("java.ext.dir")); + logDiagnostic("Application classpath: " + System.getProperty("java.class.path")); + } catch(SecurityException ex) { + logDiagnostic("Security setting prevent interrogation of system classpaths."); + } + String className = clazz.getName(); ClassLoader classLoader; ClassLoader systemClassLoader; diff --git a/src/java/org/apache/commons/logging/impl/LogFactoryImpl.java b/src/java/org/apache/commons/logging/impl/LogFactoryImpl.java index 27579e9..4c46f83 100644 --- a/src/java/org/apache/commons/logging/impl/LogFactoryImpl.java +++ b/src/java/org/apache/commons/logging/impl/LogFactoryImpl.java @@ -840,6 +840,13 @@ public class LogFactoryImpl extends LogFactory { ClassLoader currentCL = getBaseClassLoader(); for(;;) { + // Loop through the classloader hierarchy trying to find + // a viable classloader. + logDiagnostic( + "Trying to load " + + logAdapterClassName + + " from classloader " + + objectId(currentCL)); try { Class c = Class.forName(logAdapterClassName, true, currentCL); constructor = c.getConstructor(logConstructorSignature);