我正在开发GWT Web应用程序,并且在部署到Tomcat时遇到了问题。
这个问题很简单,但是我不知道如何解决这个问题而没有告诉Tomcat在哪里寻找这些文件。
当我将应用程序直接部署到Tomcat时,它将在/ bin目录中查找文件,因此,如果我将log4j.properties和jaas.conf放在其中,它的工作原理就像一个魅力。
问题是我希望能够将这些文件保留在我的webapp中。
我该怎么做?
我可以添加任何内容到web.xml吗?
我试图将两个文件都放入/WEB-INF/classes
目录,但没有成功。
当我在Eclipse中运行项目时,我的jaas.config必须位于/ war文件夹中,而log4j.properties仍位于/ src文件夹中。
编辑:
我读了this并尝试了它,即使我不使用log4j进行Tomcat内部日志记录,但是它也不起作用。
我使用Tomcat 7.0
最佳答案
关于jaas.config:
实现一个ServletContextListener
并在contextInitialized
方法中执行以下操作(这是如果jaas.config位于您的战争根源,否则,只需更改路径即可):
String jaasConfigPath = event.getServletContext().getRealPath("jaas.config");
System.setProperty("java.security.auth.login.config", jaasConfigPath);