我在web.xml中安装了Log4jConfigListener,并且工作正常,但是,如果我重新部署Web应用程序而没有重新启动服务器,则log4j会关闭并且不会重新初始化。如果我从web.xml中删除Log4jConfigListener,则一切正常。

我正在使用JBoss 4.2.3-GA作为应用程序服务器。我注意到,当我不使用配置侦听器时,我看不到Log4J已关闭的任何输出,因此也许问题在于Web应用程序正在关闭JBoss的log4j LogManager。

有没有一种方法可以正确配置它,还是应该避免在开发中使用Log4jConfigListener?

最佳答案

在应用服务器管理log4j本身的情况下,Log4jConfigListener并不是很好用(在这种情况下也是如此)。两者最终将陷入一场由谁来配置log4j的拉锯战。

我建议不要在JBoss中使用Log4jConfigListener,而是依靠JBoss自己的log4j配置。

10-04 23:42