starting with adding the log4j library, as shown in the image on your left hand side.
Next, you need to create a log4j.properties file, within:
C:\...\Model\src
just like the following:
# Set root logger level to INFO and its only appender to ConsoleOut.
log4j.rootLogger=INFO, ConsoleOut
# ConsoleOut is set to be a ConsoleAppender.
log4j.appender.ConsoleOut=org.apache.log4j.ConsoleAppender
# ConsoleOut uses PatternLayout.
log4j.appender.ConsoleOut.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsoleOut.layout.ConversionPattern=%-5p: [%d] %c{1} - %m%n
log4j.logger.org.apache.jsp=DEBUG
#Addon for
com.sun.faces.level=FINE
Third, you need to edit your code just like that:
...
import org.apache.log4j.Logger;
...
public class TuhraServiceImpl extends TuhraApplicationModuleImpl implements TuhraService {
private Logger logger = Logger.getLogger(this.getClass());
...
public void createNewImageForEmployee(Number employeeId, String imageName){
...
if (logger.isDebugEnabled())
logger.debug("New image has been created!");
}
}
Finally, you should see your logger message appear in the log output window;
INFO : [2010-09-16 10:26:16,517] TuhraServiceImpl - New image has been created!
Would you like to refactor?
Moreover, you could move the code line below:
private Logger logger = Logger.getLogger(this.getClass());
to the super class:
package tuhra.model.framework;
import oracle.jbo.server.ApplicationModuleImpl;
import org.apache.log4j.Logger;
public class TuhraApplicationModuleImpl extends ApplicationModuleImpl {
protected Logger logger = Logger.getLogger(this.getClass().getName());
}
Once more, your custom logger message should appear in the log output :
INFO : [2010-09-16 15:20:02,247] TuhraServiceImpl - New image has been created!
Finally, if you need more tips about appenders:
http://www.mobilefish.com/developer/log4j/log4j_quickguide_appenders.html
https://logging.apache.org/log4j/2.x/