Description
Currently, NetUI expects Log4J be present in classloader for a web application. This is required by the o.a.b.n.u.l.Logger class which abstracts logging from NetUI clients. But, because the Logger is hard wired to Log4J, it's not possible to switch to a different log implementation.
This improvement would abstract NetUI from Log4J and use commons-logging to create Log instances.
The implementation works as follows:
o.a.b.n.u.l.Logger instances are created through a static "getInstance(Class)" method which wraps a commons-logging Log instance. This Log instance is created by calling:
org.apache.commons.logging.LogFactory.getLog(String)
which delegates to the appropriate LogFactory.
Back-compat for previous Logger clients is preserved by the o.a.b.n.u.l.Logger constructors which have been changed to create a Log4JLogger instance that is hard-wired to Log4J. These constructors and the Log4JLogger class are all deprecated.