1 Reply Latest reply: Jan 31, 2011 11:20 AM by Kariem Hussein RSS

slf4j StaticLoggerBinder - This code should have never made it into the jar

Richard Hauswald Newbie
Hi folks,
I'm using the weld-servlet 110Beta2 and slf4j 1.6.1 and encountered the following problem:
When booting the webapp slf4j says:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/.../lib/logback-classic-0.9.21.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/.../WEB-INF/lib/weld-servlet-1.1.0.Beta2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.

After this message, I get the following exception:
10:16:57.706 [main] ERROR o.a.c.core.ContainerBase.[Catalina].[localhost].[/research.jsf1] - Error configuring application listener of class org.jboss.weld.environment.servlet.Listener
java.lang.NoSuchMethodError: org.slf4j.spi.LocationAwareLogger.log(Lorg/slf4j/Marker;Ljava/lang/String;ILjava/lang/String;[Ljava/lang/Object;Ljava/lang/Throwable;)V

After Opening the source of the [jar:file:/C:/.../WEB-INF/lib/weld-servlet-1.1.0.Beta2.jar!/org/slf4j/impl/StaticLoggerBinder.class] I found the following lines of code:
...
private StaticLoggerBinder() {
   throw new UnsupportedOperationException("This code should have never made it into the jar");
}

public ILoggerFactory getLoggerFactory() {
   throw new UnsupportedOperationException("This code should never make it into the jar");
}

public String getLoggerFactoryClassStr() {
   throw new UnsupportedOperationException("This code should never make it into the jar");
}

Could you please provide a fixed jar ?

Thanks,
Richard