Это действительно довольно странно - вы случайно используете Apache Commons Logging ?
Это просто короткое замыкание в темноте, но каждый раз, когда я испытываю что-то странное с log4j и / или Commons Logging Я сразу вспоминаю и вновь обращаюсь к хорошо документированным проблемам, особенно с последним (см. Подумайте еще раз, прежде чем принимать API ведения журнала общего пользования или еще более полную версию Таксономия проблем загрузчика классов, возникающих при использовании Jakarta Commons Logging ), кратко изложенных в ответе delfuego для log4j и загрузчик классов контекста потока :
Вы, кажется, наткнулись на главную проблему с log4j (и
Apache Commons Logging), а именно, что у них есть смехотворно
трудно обнаружить и взаимодействовать с правильными
они используются.
Учитывая саму природу проблемы загрузчика классов, я мог бы себе представить, что она также спровоцировала вашу проблему, то есть в зависимости от того, какой загрузчик классов в настоящее время завершил подключение в журнале, он может использовать другой путь поиска свойств ведения журнала и соответствующие значения по умолчанию, см. Почему log4j не может найти мой файл свойств в приложении J2EE или WAR? :
Краткий ответ: классы log4j и файл свойств не являются
в рамках того же загрузчика классов.
Длинный ответ (и что с этим делать): контейнеры J2EE или Servlet
использовать систему загрузки классов Java. Sun изменила способ загрузки классов
работает с выпуском Java 2. В Java 2 расположены загрузчики классов
в иерархических родительско-дочерних отношениях. Когда ребенок загрузчик
нужно найти класс или ресурс, сначала он делегирует запрос
родитель. [...]
Упомянутые проблемы обычно легко устранить, переключившись на Simple Logging Facade для Java (SLF4J) действительно (у которого, как оказалось, тот же автор, что и у log4j, Ceki Gülcü), как это также предлагается delfuego:
[...] сообщение о том, что одна из главных движущих сил для
новая структура ведения журналов SL4J должна была устранить эти проблемы
полностью. Вы могли бы хотеть обменять это и видеть, сделана ли ваша жизнь
проще.
Наконец, приключение Джона (на сегодняшний день не решено) с Вход с помощью log4j на tomcat jruby-rack для приложения Rails 3 , похоже, подсказывает соответствующие проблемы и возможное решение с помощью SL4J а также.
Удачи!