Index: lutinutil/src/java/org/codelutin/log/Log4JWrapper.java diff -u lutinutil/src/java/org/codelutin/log/Log4JWrapper.java:1.1 lutinutil/src/java/org/codelutin/log/Log4JWrapper.java:1.2 --- lutinutil/src/java/org/codelutin/log/Log4JWrapper.java:1.1 Wed Jan 10 19:12:44 2007 +++ lutinutil/src/java/org/codelutin/log/Log4JWrapper.java Fri Jan 19 10:00:38 2007 @@ -23,9 +23,9 @@ * Created: 10 janv. 07 17:07:54 * * @author poussin - * @version $Revision: 1.1 $ + * @version $Revision: 1.2 $ * - * Last update: $Date: 2007/01/10 19:12:44 $ + * Last update: $Date: 2007/01/19 10:00:38 $ * by : $Author: bpoussin $ */ @@ -44,6 +44,22 @@ */ public class Log4JWrapper { + private static Level traceLevel; + + static { + // Releases of log4j1.2 >= 1.2.12 have Priority.TRACE available, earlier + // versions do not. If TRACE is not available, then we have to map + // calls to Log.trace(...) onto the DEBUG level. + + try { + traceLevel = (Level)Level.class.getDeclaredField("TRACE").get(null); + } catch(Exception ex) { + // ok, trace not available + traceLevel = Level.DEBUG; + } + } + + final static private String FQCN = LutinLog.class.getName() + "."; static public void fatal(Log4JLogger log, Object msg, Throwable eee) { @@ -62,7 +78,7 @@ log.getLogger().log(FQCN, Level.DEBUG, msg, eee); } static public void trace(Log4JLogger log, Object msg, Throwable eee) { - log.getLogger().log(FQCN, Level.TRACE, msg, eee); + log.getLogger().log(FQCN, traceLevel, msg, eee); } }