From a48c939fe42039cf03a6e957d3060c7a915565c0 Mon Sep 17 00:00:00 2001 From: Robert Burrell Donkin Date: Thu, 2 Feb 2006 22:56:55 +0000 Subject: [PATCH] Improved diagnostics git-svn-id: https://svn.apache.org/repos/asf/jakarta/commons/proper/logging/trunk@374538 13f79535-47bb-0310-9956-ffa450edef68 --- src/java/org/apache/commons/logging/LogFactory.java | 7 +++++++ .../org/apache/commons/logging/impl/LogFactoryImpl.java | 7 +++++++ 2 files changed, 14 insertions(+) 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);