У меня возникла любопытная проблема. У меня было это приложение Java, которое ранее было развернуто в tomcat и с радостью использовало классический журнал в качестве реализации slf4j. Теперь, когда мы попытались развернуть одно и то же приложение на сервере jboss 7.1.final, он даже не развертывает приложение maoning
java.lang.ClassCastException: org.slf4j.impl.Slf4jLoggerFactory cannot be cast to 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 и указал его на баннеры журнала.
<resources>
<resource-root path="logback-classic-0.9.28.jar"/>
<resource-root path="logback-core-0.9.28.jar"/>
</resources>
Теперь, когда я запускаю приложение, я получаю серьезную ошибку
Exception starting filter WicketFilter: java.lang.ClassCastException: ch.qos.logback.classic.LoggerContext cannot be cast to ch.qos.logback.classic.LoggerContext
Я нахожусь на своем пути. Любые эксперты jboss и logback могут помочь? Спасибо заранее