【发布时间】:2011-11-08 16:07:41
【问题描述】:
我一直在开发一个简单的 Spring MVC 应用程序作为报告服务。在本地,我一直使用 maven-tomcat-plugin 运行应用程序,使用 mvn tomcat:run。这完全符合预期。但是,我现在尝试将此服务部署到运行 Tomcat 6 的服务器上。我将 war 文件加载到 webapps 目录中,Tomcat 注意到它,部署它,然后抱怨:
log4j:WARN No appenders could be found for logger
(org.springframework.web.filter.CharacterEncodingFilter).
log4j:WARN Please initialize the log4j system properly.
而且,不出所料,该服务没有日志记录。
我不清楚上面的错误消息,我想知道是否有人可以给我一些帮助。
为了后代,我有一个非常简单的 log4j.properties 文件(位于/src/main/resources):
log4j.rootLogger=WARN, console
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern= %d{HH:mm:ss,SSS} [%t] %-5p %x %C{1} : %m%n
log4j.logger.com.rtr=DEBUG
我目前的假设是 tomcat 盒子可能根本看不到这个属性包,但我不确定。我能够通过将捆绑包热复制到WEB-INF/classes 来确认这个假设,并获得了适当的结果。在类路径上但不在奇怪位置的正确位置是什么?
感谢任何指导。
【问题讨论】:
-
你确认属性文件在war文件的
/WEB-INF/classes吗?