Логирование OSGi с удлинителем Spring-DM не ведется - PullRequest
0 голосов
/ 05 мая 2010

Мои настройки : я могу создать простой OSGi-пакет с Log4J в качестве моей инфраструктуры ведения журналов, и при развертывании в моем контейнере OSGi (Equinox) он отлично работает, моя регистрация очень просто настраивается с помощью отдельного пакета фрагмент, который настраивает мою регистрацию. В этой настройке не задействована пружина, и она работает очень хорошо.

Моя проблема : я конвертирую в OSGi приложение Spring, которое использует log4j в качестве каркаса ведения журнала, на первом этапе было создание различных пакетов для моего приложения Spring, которое я сейчас завершил. У меня проблема в том, что пакет фрагментов журналирования OSGi, который работал с приложениями, не поддерживающими Spring, не конфигурирует мои пакеты с поддержкой Spring.

Я знаю, что пакеты активны, так как system.out.println работает, но все мои настройки не работают. Я ничего не вижу в консоли. Я вижу много весенних выводов, подтверждающих, что мои сервисы комплектов открыты, но журналирования нет.

Любые предложения приветствуются.

1 Ответ

2 голосов
/ 05 мая 2010

У меня это сейчас исправлено, оно заняло у меня немало сил за день, поэтому я надеюсь, что когда-нибудь это кому-нибудь поможет.

Я нашел статью Как использовать Pax Logging в моих пакетах , и в ней упоминалось, что я использовал следующее в своем МАНИФЕСТЕ

Import-Package: org.apache.log4j; version="[1.2,1.3)"; provider=paxlogging,
 org.apache.commons.logging; version="[1.0,1.1)"; provider=paxlogging

Этот код удостоверяет, что провайдер для ведения журнала - это paxlogging.

Без этого я никогда не смог увидеть ни одно из своих сообщений в журнале. Теперь я могу, и это здорово, настраивая это, похоже, не работает с фрагментами, поэтому я смотрю на ConfAdmin для этого, но пока доволен и может продолжить разработку при правильном ведении журнала.

...