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