I have log4j.jar and commons-logging.jar on my application classpath.I have seen the classloader problem in was6.0 where you have to make it "app first", but I dont see any commons-logging classes from the base Websphere classpath in the classloader views.

The fact that the file is empty is telling us that indeed your own log4j.properties is being called, and not some other log4j.properties / log4j.xml in the classpath. Remember, File Appenders in log4j are designed so the output file is created as soon as log4j initializes - not waiting for the first log line to go there.