当前位置: 首页 > 工具软件 > log4j-finder > 使用案例 >

Struts+Spring+Hibernate项目中使用log4j时发生如下错误"org.apache.log4j.spi.ErrorHandler"

孟哲
2023-12-01

ERROR [STDERR] log4j:ERROR The class "org.apache.log4j.spi.ErrorHandler" was loaded by
21:58:56,496 ERROR [STDERR] log4j:ERROR [WebappClassLoader
delegate: false
repositories:
/WEB-INF/classes/
----------> Parent Classloader:
java.net.FactoryURLClassLoader@145abc54

] whereas object of type
21:58:56,497 ERROR [STDERR] log4j:ERROR "org.jboss.logging.util.OnlyOnceErrorHandler" was loaded by
[org.jboss.system.server.NoAnnotationURLClassLoader@19616c7].
21:58:56,542 ERROR [STDERR] log4j:ERROR Could not create an Appender. Reported error follows.
21:58:56,542 ERROR [STDERR] java.lang.ClassCastException: org.jboss.logging.appender.DailyRollingFileAppender

 

该问题是由于jboss日志系统和你的Web日志系统冲突问题产生的,查了下jboss论坛,看到有高手说只要在jboss启动是添加如下参数就可以解决错误:
   -Dlog4j.defaultInitOverride=true
   试了下,确实相关的Exception没有了,工程是能跑了,但工程的相应日志系统不起作用了.
   其实最直接的方法就是到jboss deploy下面相应的war lib中把log4j*.jar和common-logging.jar删除就可以了.jboss在日志方面默认直接用common-logging1.0.4,没可以不必再去配置日志系统。 
 

 类似资料: