在struts Web应用程序中没有生成Log4j文件?

时间:2013-11-15 06:33:11

标签: java logging struts2 log4j error-logging

我正在尝试使用Log4j记录我的网络应用程序。我已经正确配置了一切。但是没有生成log4j日志文件。

保存web-inf / classes中的log4j.properties文件,并添加log4j.jar以构建路径。

log4j.properties:

# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=C\:\\loging.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n

# Root logger option
log4j.rootLogger=error, file, stdout

1 个答案:

答案 0 :(得分:0)

您可能创建了一个可能正确的配置,但如果底层环境不使用它并且此框架作为日志记录机制,则它无用。 Struts2还具有要使用的日志框架的优先级或首选项。此优先级可能会因版本而异。据我记得2.3.12版本,优先级转向slf4j。在公共记录之前,优先级为#1。

要解决您的问题,您应该检查是否已部署了slf4j库,然后将其删除,因此,commons-logging仍然是一个有效选项,但#2。您还可以使用commons-logging.properties配置commons-logging以使用log4j。默认情况下,如果找到log4j配置,则使用log4j。