Defensive catch block in LogbackLoggingSystem

Older versions of JBoss AS have a classpath clash with an older
SLF4J (pre 1.6.5), so to prevent an app from blowing up on
startup we defensively catch a NoSuchMethodError.

Fixes gh-339
This commit is contained in:
Dave Syer 2014-02-12 09:16:21 +00:00
parent f0bfecd375
commit be73535611
1 changed files with 7 additions and 1 deletions

View File

@ -67,7 +67,13 @@ public class LogbackLoggingSystem extends AbstractLoggingSystem {
public void beforeInitialize() {
super.beforeInitialize();
if (ClassUtils.isPresent("org.slf4j.bridge.SLF4JBridgeHandler", getClassLoader())) {
SLF4JBridgeHandler.removeHandlersForRootLogger();
try {
SLF4JBridgeHandler.removeHandlersForRootLogger();
}
catch (NoSuchMethodError e) {
// Method missing in older versions of SLF4J like in JBoss AS 7.1
SLF4JBridgeHandler.uninstall();
}
SLF4JBridgeHandler.install();
}
}