1

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

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

JBoss 有log4j.jarinserver\default\lib和文件夹。另外clientlog4jboot.jarclient文件夹中。

由于它无法打开网页,我将 JBoss 中的所有日志 jar 更改为 version 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
4

1 回答 1

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。
于 2013-06-14T16:01:45.023 回答