由于版本差异,jboss中的log4j错误

时间:2013-03-01 05:26:59

标签: java jboss log4j internal-server-error

我们正在将我们的应用程序从maven编译代码部署到JBoss。

Maven能够编译代码并由人们共享。此外,它使用log4j版本1.2.16。在JBoss中,应用程序构建是成功的,但是网页没有打开。

JBoss在log4j.jarserver\default\lib个文件夹中有client个.Plus,log4jboot.jar位于client文件夹中。

由于它无法打开网页,我将JBoss中的所有日志jar更改为版本1.2.16

现在应用程序已启动并且网页正在运行,但我无法在服务器命令提示符中看到日志详细信息。

目前这是错误:

failed to initialize plugin org.jboss.logging.log4jloggerplugin

有人可以就此提出想法吗?

修改

使用log4jboot.jar时,错误是500错误:

type Exception report

// message:

 The server encountered an internal error () that prevented it from fulfilling this request.

// exception:

javax.servlet.ServletException: Filter execution threw an exception
    org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)


// root cause:

java.lang.NoSuchMethodError: org/apache/log4j/MDC.clear()V

1 个答案:

答案 0 :(得分:2)

了解您正在使用的JBoss版本将会有所帮助。

JBoss 5.1.0.GA随附log4j版本1.2.14。 MDC.clear()方法在1.2.16中引入,它解释了如果你使用的是旧版本的JBoss,你会得到NoSuchMethodError。

尝试一些解决方案:

  1. 删除MDC.clear()方法的所有用法。
  2. 升级JBoss服务器。
  3. 将您提供的log4j jar替换为您自己的。