Uploaded image for project: 'JBoss Transaction Manager'
  1. JBoss Transaction Manager
  2. JBTM-325

Reconcile conflicting overrides of commons-logging Log4JLogger

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Done
    • Icon: Major Major
    • 4.3.0.GA
    • 4.3.0.BETA2
    • Common
    • None

      As part of the fix for JBTM-20, JBossTS instructs Jakarta Commons Logging to use com.arjuna.common.internal.util.logging.jakarta.Log4JLogger as its implementation of the JCL Log interface. This supersedes an alternate override of the default JCL behavior that JBoss AS had in place. The AS is using a special forked version of JCL 1.1.0 known as 1.1.0.jboss. The fork involves changing the org.apache.commons.logging.Log4JLogger class to better support use of separate log4j subsystems between different deployments.

      We need to reconcile these two conflicting overrides of the default JCL behavior and make sure the goals of each are fulfilled. At the moment, I'm aware of two things the AS fork was doing that the com.arjuna version is not:

      1) Support for trace level logging – the com.arjuna class seems to be based on older code and maps trace to debug.
      2) Support for not binding of org.apache.log4j classes, using the TCCL to load the log4j classes when a Log4JLogger instance is created and using reflection to invoke upon them.

      The AS fork isn't doing any of the i18n stuff that AIUI the JBossTS version does.

      The source for the AS fork of JCL can be found at:

      1) https://svn.jboss.org/repos/repository.jboss.org/apache-logging/1.1.0.jboss/lib/commons-logging-src.zip
      2) cvs -d:ext:starksm@cvs.forge.jboss.com:/cvsroot/jboss co apache
      CVS tag for the 1.1.0.jboss release is JBoss_Apache_Common_Logging_1_1_0

              rhn-engineering-jhallida Jonathan Halliday
              bstansbe@redhat.com Brian Stansberry
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: