The problem may be that WebSphere 6.1 uses Jakarta Commons Logging (JCL) internally, and if any of your code or third-party libraries also use JCL, WebSphere configuration conflicts with your application try to use log4j. If this happens, you will see what exactly you see.
There are several links and blog posts that describe how to solve this problem. We found that the easiest way to create a file called org.apache.commons.logging.LogFactory in the META-INF/services your web application (in the WAR root archive). This file should contain the line:
org.apache.commons.logging.impl.Log4jFactory
(At least with the new versions of WebSphere ...) Another key is that the JCL bank needs to be loaded from the same location as the log4j log file. for example, either from WEB-INF / lib, or from a shared library. Therefore, you cannot refuse to download the JCL from your copy of WebSphere. If they are loaded by different class loaders , they cannot correctly see each other.
source share