我的网络应用似乎工作正常。我决定添加一些日志记录。当我部署war文件时,应用程序失败并出现异常,因为tomcat不知道log4j.jar。
我将jar添加到WEB-INF / lib文件夹并重新部署。例外消失了。这让我知道WEB-INF / lib在类路径上。
但是,现在logs / catalina.out有以下典型错误消息:
log4j:WARN No appenders could be found for logger (com.this.that.Validate).
log4j:WARN Please initialize the log4j system properly.
因此,我将log4j.properties文件复制到WEB-INF / lib文件夹中。
log4j警告仍会显示,据我所知,没有记录任何内容。
我很欣赏有关解决这个问题的一些指导。我在追我的尾巴。
我相信我的第一个问题已经解决 - 我不再收到警告信息。我认为发生的事情是我在爆炸文件层次结构中有一个带有pwd的unix shell,这阻止了Tomcat成功删除旧项目。
我的log4j.properties文件是
log4j.rootLogger=DEBUG, FILE
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=prog1.log
log4j.appender.FILE.MaxFileSize=100KB
# Keep one backup file
log4j.appender.FILE.MaxBackupIndex=1
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%p %t %c - %m%n
我将'log4j.appender.FILE.File = prog1.log'行更改为具有tomcat日志记录文件夹的显式路径。
谢谢大家,您的想法帮助我解决了这个问题,并且让智商变得更加智能。
答案 0 :(得分:5)
将log4j.properties复制到WEB-INF / classes。