您好,匿名用户
随意问技术百科期待您的加入

自定义log4j配置文件路径后,只能使用文件夹形式(war exploded模式)部署,使用war方式部署会出现错误,原因在哪里???

+1 投票

我在web.xml中设置了一个自定义的log4jConfigLocation位置

 <!--Log4J配置-->
<context-param>
<param-name>webAppRootKey</param-name>
<param-value>DPCM.root</param-value>
</context-param>

<context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>classpath:conf/log/log4j.xml</param-value>
</context-param>

<context-param>
    <param-name>log4jRefreshInterval</param-name>
    <param-value>60000</param-value>
</context-param>

<listener>
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>

在Intellij IDEA 中运行 使用war exploded 模式 也就是 使用文件夹方式部署,可以正常启动, 而使用war方式部署,会得到错误提示

log4j:WARN No appenders could be found for logger (org.springframework.web.context.ContextLoader).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
用户头像 提问 2013年 9月8日 @ Poseidon 上等兵 (188 威望)
分享到:

1个回答

0 投票

估计应该是这个地方的问题:

<context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>classpath:conf/log/log4j.xml</param-value>
</context-param>

配置中是加载classpath中conf/log/log4j.xml路径的log4j文件,以文件夹的形式部署,能找到classpath对应路径的文件,以war方式部署无法找到。所以建议看看打包后的war中是否包含指定classpath路径文件

用户头像 回复 2013年 9月8日 @ Shaco 上等兵 (179 威望)
提一个问题:

相关问题

0 投票
1 回复 27 阅读
用户头像 提问 2014年 1月2日 @ Skarner 上等兵 (193 威望)
0 投票
1 回复 39 阅读
0 投票
1 回复 34 阅读
0 投票
1 回复 73 阅读
用户头像 提问 2013年 10月28日 @ Redis 上等兵 (114 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...