I’m deploying an enterprise application on Weblogic 8.1 which has log4j 1.2.8 on it’s classpath. I’m getting the following error with SLF4J 1.6.1:
SLF4J versions 1.4.0 and later
requires log4j 1.2.12 or later
http://www.slf4j.org/codes.html#log4j_version
Above link recommends using Log4jLoggerAdapter.
I’ve changed
Logger logger = LoggerFactory.getLogger(HelloWorld.class);
logger.info("Hello World");
to
Log4jLoggerAdapter logger = (Log4jLoggerAdapter) LoggerFactory.getLogger(HelloWorld.class);
logger.info("Hello World");
However, I’m still encountering the error.
Any advice on how to correctly implement this?
Thanks.
[edit]
slf4j-api-1.6.1.jar and slf4j-log4j12-1.6.1.jar are on my development classpath, and packaged into APP-INF/lib of my EAR file. log4j 1.2.8 is on application server’s classpath.
The “SLF4J versions 1.4.0 and later requires log4j 1.2.12 or later” is only a warning. SLF4J 1.6.1 should work just fine with log4j 1.2.8. In other words, you don’t have to change anything. In particular, casting to Log4jLoggerAdapter is unnecessary, it will not help in any way except make your code uglier.