Often, an application will want to have its own log4j configuration and have all log messages generated go to an application-specific log file. Solutions to this problem are documented on this wiki page: http://www.jboss.org/wiki/Wiki.jsp?page=Logging
The log4j RepositorySelector provides a clean solution to this problem without any special classloader settings. However, at the present time, a developer must create his own version of a RepositorySelector and make sure his application initializes it properly.
This can be difficult to accomplish because the RepositorySelector feature is not well known and takes time to understand. It can also be difficult to make sure that the RepositorySelector is initialized before the application makes ANY call to Logger.getLogger().
We can instead, provide a RepositorySelector implementation as part of the JBoss Application server. If a deployer finds a log4j.xml file in the /META-INF direcotry (or /WEB-INF for WARs) it would add an entry into the RepositorySelector for that application. Then, logging from that application would use the custom log4j configuration.