Настройка конфигурации ведения журнала внешнего веб-приложения с помощью Jetty и log4j - PullRequest
2 голосов
/ 22 ноября 2010

У меня есть веб-приложение, упакованное как война, которое я развернул в Jetty (версия 6.1.25).Веб-приложение использует log4j.Я хотел бы иметь возможность настроить ведение журнала веб-приложения с помощью файла конфигурации, который является внешним по отношению к войне (то есть не записан).

Я попытался использовать пользовательский контекст WebAppContext с указанием свойства дополнительного пути к классув файл log4j.properties, который я хочу внедрить в путь к классу webapp, но это не сработало.

<Configure class="org.mortbay.jetty.webapp.WebAppContext">
  <Set name="contextPath">/quantel</Set>
  <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/quantel</Set>
  <Set name="extraClasspath">quantel/log4j.properties</Set>
</Configure>

Я получаю следующее сообщение об ошибке:

log4j:WARN No appenders could be found for logger (org.apache.commons.configuration.ConfigurationUtils).
log4j:WARN Please initialize the log4j system properly.

Возможно ли этосделать это с Jetty?

Заранее спасибо.

1 Ответ

1 голос
/ 22 ноября 2010

Я настроил конфигурацию xml выше, чтобы добавить папку, содержащую файл конфигурации log4j, в путь к классам webapp, а не просто добавлять сам файл конфигурации. Сейчас работает, но мне не понятно почему.

Моя рабочая конфигурация выглядит так:

<Configure class="org.mortbay.jetty.webapp.WebAppContext">
  <Set name="contextPath">/quantel</Set>
  <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/quantel</Set>
  <Set name="extraClasspath"><SystemProperty name="jetty.home" default="."/>/quantel</Set>
</Configure>
...