请正确初始化log4j系统。在运行Web服务时
这些消息有些棘手,足以使人们创建此消息使其更加清晰:https://issues.apache.org/bugzilla/show_bug.cgi?id =25747
关于它们的棘手之处在于,如果Log4j找不到其log4j.properties(或log4j.xml)文件,并且该文件既好又花哨但从配置的角度来看它的内容不完整,则会写警告。
以下段落摘自此处:http://svn.apache.org/repos/asf/logging/log4j/tags/v1_2_9/docs/TROUBLESHOOT.html
日志输出通过使用附加程序写入目标。 如果没有任何附加程序附加到类别或其任何祖先,则在尝试登录时会收到以下消息:
log4j: No appenders Could be found for category (some.category.name).log4j: Please initialize the log4j system properly.
Log4j没有默认的日志记录目标。 用户有责任确保所有类别都可以继承附加程序。通过将附加器附加到根类别,可以轻松实现这一点。
您可以log4j.rootLogger在log4j文档中找到有关如何配置rootlogger()的信息,基本上在文件开头添加了以下内容:
log4j.rootLogger=debug, stdoutlog4j.appender.stdout=org.apache.log4j.ConsoleAppenderlog4j.appender.stdout.layout=org.apache.log4j.PatternLayoutlog4j.appender.stdout.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
(确保您尚未有名为appender的附加程序stdout;还要注意您为root记录程序指定的级别,debug它非常冗长,并且应用程序中的每个库都将开始向控制台)。
关于log4j.properties/ log4j.xml,我建议您放置该文件,/WEB-INF/classes因为将其公开以进行不同的调整(激活/停用日志,更改日志级别等)非常重要。您也可以将其放在类路径的JAR中(如注释中所指定),但是它将被包含在存档中(希望位于存档中的正确位置),并且不会像它那样容易处理在/WEB-INF/classes。
解决方法问这个问题似乎很愚蠢,但我很困惑。我提到了配置Log4j属性,但这似乎无济于事。
我已经编写了一个简单的Web服务HelloWorld。而在运行它时,我得到这样的错误:
log4j:WARN找不到记录器的附加程序(org.apache.axis.transport.http.AxisServlet)。log4j:WARN请正确初始化log4j系统。
我不确定为什么会这样。
我正在使用Eclipse生成Web服务,并将其部署在Tomcat6.0中。我查看了《Axis开发人员指南》并根据它们
log4j.configuration =log4j.properties使用此系统属性可以指定Log4J配置文件的名称。如果未指定,则默认配置文件为log4j.properties。axis.jar中提供了一个log4j.properties文件。
我在中找不到log4j.properties axis.jar。
有什么帮助吗?
相关文章:
1. python - django 里自定义的 login 方法,如何使用 login_required()2. javascript - git clone 下来的项目 想在本地运行 npm run install 报错3. python如何不改动文件的情况下修改文件的 修改日期4. mysql优化 - mysql count(id)查询速度如何优化?5. 主从备份 - 跪求mysql 高可用主从方案6. angular.js - 不适用其他构建工具,怎么搭建angular1项目7. mysql主从 - 请教下mysql 主动-被动模式的双主配置 和 主从配置在应用上有什么区别?8. node.js - node_moduls太多了9. android-studio - Android 动态壁纸LayoutParams问题10. sql语句如何按or排序取出记录
