Logback и Jboss 7 - не работают вместе?

У меня возникла любопытная проблема. У меня было это Java-приложение, которое ранее было развернуто в Tomcat и с радостью использовало классический логбэк в качестве реализации slf4j. Теперь, когда мы пытались развернуть то же приложение на сервере jboss 7.1.final, оно даже не развертывает приложение, которое занимается java.lang.ClassCastException: org.slf4j.impl.Slf4jLoggerFactory нельзя преобразовать в ch.qos.logback.classic.LoggerContext Это оскорбительная строка кода

final LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();

. Класс, в который встроено его, является Spring, и он дает сбой - следовательно, все приложение не может быть развернуто. У кого-нибудь есть решение? Заранее спасибо

Посмотрев на этот сайт и на другие форумы, я понял, что Jboss 7 поставляется в комплекте с собственной реализацией slf4j и реализует тот же интерфейс ILoggerFactory, что и LoggerContext в logback.Наше приложение пыталось получить экземпляр того же самого, но сервер приложений навязывает собственную реализацию slf4j.

Я попытался изменить файл module.xml в jboss \ modules \ org \ slf4j \ impl \ main и указал его на jar-файлы с логбэком.

<resources>
    <resource-root path="logback-classic-0.9.28.jar"/>
    <resource-root path="logback-core-0.9.28.jar"/>
</resources>

Теперь, когда я запускаю приложение, я получаю серьезную ошибку.

Исключение, запускающий фильтр WicketFilter: java.lang.ClassCastException: ch.qos.logback.classic.LoggerContext не может быть преобразован в ch.qos.logback.classic. LoggerContext

Я в своем уме. Любые специалисты по jboss и logback могут помочь? Заранее благодарим

38
задан simont 1 March 2012 в 18:53
поделиться