This topic describes several ways to configure an application to use the WebSphere Application Server logger.
The type of configuration that best suits an application depends upon the following:
The following tables describe the conditions required to enable an application to use the WebSphere Application Server logger.
Class loader mode is Parent First and Jakarta Commons Logging is bundled with the application
Jakarta Commons Logging configuration | LogFactory instance | Log instance | Comments |
---|---|---|---|
The application provides the configuration by either
of the following: • The properties file commons-logging.properties in the application classpath is not read by the LogFactory because the parent class loader finds the WebSphere properties file first. • The
class name is read from the file
META-INF/services/ org.apache.commons .logging.LogFactory |
The log factory used is the LogFactory implementation specified in the WebSphere Application Server default configuration, unless the configuration is provided in a META-INF file of the application or module. | The log used is either of the following: • The Log implementation specified in the WebSphere Application Server default configuration • An application-specific Log implementation if an application-specific LogFactory that instantiates a different Log implementation is used. |
The application parent class loader is the first
class loader to load the Jakarta Commons Logging code. The WebSphere bundle that
supports Jakarta Commons Logging provides the LogFactory static code that
looks up the LogFactory configuration attributes. For the static LogFactory code to instantiate the LogFactory instance specified in the application configuration, the LogFactory instance must be on the classpath of the parent class loader. |
Not provided by the application | The log factory used is the LogFactory implementation specified in the WebSphere default configuration. | The log used is the Log implementation specified in the WebSphere default configuration. | The Jakarta Commons Logging bundled with the application is not used. |
Class loader mode is Parent First and Jakarta Commons Logging is not bundled with the application
Jakarta Commons Logging configuration | LogFactory instance | Log instance | Comments |
---|---|---|---|
The application provides the configuration by either
of the following: • The properties file commons-logging.properties in the application classpath is not read by the LogFactory because the parent class loader finds the WebSphere Application Server properties file first. • The class name is read from the file
META-INF/services/ org.apache.commons .logging.LogFactory |
The log factory used is the LogFactory implementation specified in the WebSphere Application Server default configuration, unless the configuration is provided in a META-INF file of the application or module. | The log used is either of the following: • The Log implementation specified in the WebSphere Application Server default configuration • An application-specific Log implementation if an application-specific LogFactory that instantiates a different Log implementation is used. |
The application parent class loader is the first
class loader to load the Jakarta Commons Logging code. The WebSphere bundle that
supports Jakarta Commons Logging provides the LogFactory static code that
looks up the LogFactory configuration attributes. For the static LogFactory code to instantiate the LogFactory instance specified in the application configuration, the LogFactory instance must be on the classpath of the parent class loader. |
Not provided by the application | The log factory used is the LogFactory implementation specified in the WebSphere Application Server default configuration. | The log used is the Log implementation specified in the WebSphere Application Server default configuration. | Same as in the previous row |
Class loader mode is Parent Last and Jakarta Commons Logging is bundled with the application
Jakarta Commons Logging configuration | LogFactory instance | Log instance | Comments |
---|---|---|---|
The application provides the configuration by either
of the following: • The properties file commons-logging.properties in the application classpath is read by the LogFactory because the parent class loader finds the WebSphere Application Server properties file first. • The class name is read from the file
META-INF/services/ org.apache.commons .logging.LogFactory |
The log factory used is either of the following: • The default Jakarta Commons Logging LogFactory • The LogFactory specified in the application configuration |
The log used is the Log implementation specified in
the application configuration. If the log factory used is the default Jakarta Commons Logging LogFactory, the Log implementation must be on the classpath of the application class loader. |
The application class loader is the first class
loader to load the Jakarta Commons Logging code. The application bundle that
supports Jakarta Commons Logging provides the LogFactory static code that
looks up the LogFactory configuration attributes. For the static LogFactory code to instantiate the LogFactory instance specified in the application configuration, the LogFactory instance must be on the classpath of the application class loader. |
Not provided by the application | The log factory used is the LogFactory implementation specified in the WebSphere Application Server default configuration. | The log used is the Log implementation specified in the WebSphere Application Server default configuration. |
Class loader mode is Parent Last and Jakarta Commons Logging is not bundled with the application
Jakarta Commons Logging configuration | LogFactory instance | Log instance | Comments |
---|---|---|---|
The application provides the configuration by either
of the following: • The properties file commons-logging.properties in the application classpath is read by the LogFactory because the parent class loader finds the WebSphere properties file first. • The class
name is read from the file
META-INF/services/ org.apache.commons .logging.LogFactory |
The log factory used is either of the following: • The default Jakarta Commons Logging LogFactory • The LogFactory specified in the application configuration |
The log used is the Log implementation specified in
the application configuration. If the log factory used is the default Jakarta Commons Logging LogFactory, the Log implementation must be on the classpath of the application class loader. |
There is no Jakarta Commons Logging code at the application
class loader. Thus, the WebSphere bundle that supports Jakarta Commons
Logging provides the LogFactory static code that looks up the LogFactory configuration
attributes. For the static LogFactory code to instantiate the LogFactory instance specified in the application configuration, the LogFactory instance must be on the classpath of the parent class loader. |
Not provided by the application | The log factory used is the LogFactory implementation specified in the WebSphere Application Server default configuration. | The log used is the Log implementation specified in the WebSphere Application Server default configuration. |