在java web应用程序中,如何使用spring 3.0注释从WEB-INB/conf位置读取log4j.xml
我想将 log4j.xml 文件放在 WEB-INF/conf 目录中,其中有许多其他配置文件。我希望 Web 应用程序从那里读取 log4.xml。
我试图使用spring3.0和注释。所以不确定如何访问 servlet 上下文来获取 WEB-INF 位置。
尝试了这个
InputStream ist = Thread.currentThread().getContextClassLoader().getResourceAsStream("/conf/log4j-my.xml");
但它在 tomcat/bin/ 下搜索
尝试了这个但做了'没什么帮助 DOMConfigurator.configure("WEB-INF/conf/log4j-my.xml");
希望有任何帮助/链接/指针。
I wanted to put my log4j.xml file in WEB-INF/conf directory where I have many other configuration files. And I wanted the web application to read log4.xml from there.
I was trying to use spring3.0 and annotations. So not sure how to access the servlet context to get the WEB-INF location.
tried this
InputStream ist = Thread.currentThread().getContextClassLoader().getResourceAsStream("/conf/log4j-my.xml");
but it searches under to tomcat/bin/
Tried this but did't help muchDOMConfigurator.configure("WEB-INF/conf/log4j-my.xml");
Would appreciate any help/links/pointer.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不确定你真正想做什么......
如果你的 log4j.xml 在类路径中,当你启动你的应用程序服务器时,它应该会自动加载。
启动服务器时检查控制台,您应该会看到 log4j 信息。
您还可以将 debug=true: 放入
xml 中。您将能够看到有关您的配置的大量信息。
现在,如果您想访问在 log4j.xml 中配置的附加程序,您所要做的就是:
好的,我想您想加载自定义 log4j 配置文件!在 Web 应用程序上下文中,您需要做两件事:
创建一个 contextListnerServlet;
修改你的 web.xml
ServletListner:
web.xml:
希望有帮助
Not sure what you really wanna do....
if your log4j.xml is in the classpath, when you start your app-server, it should be loaded automatically.
Check the console when you start your server and you should see your log4j info.
You can also put debug=true:
in your xml. you will be able to see a lot of info about your config.
Now if you want to access the appenders you configured in the log4j.xml, all you have to do is:
Ok, i think you wanna load a custom log4j config file! In a web app context, you will need 2 things:
create a contextListnerServlet;
modify your web.xml
ServletListner:
web.xml:
Hope it helps