我正在使用Struts 2.0.11.2而且我最近在我的应用程序中没有更改,因为我获得了TONS的freemarker日志:
DEBUG 13201 [freemark] (): template/simple/hidden.ftl[en,UTF-8,parsed] cached copy not yet stale; using cached.
如何关闭这些恼人的日志?我知道freemarker.properties文件,但我没有找到如何从那里指定日志级别。我在我的代码中尝试了黑客攻击:
freemarker.log.Logger.selectLoggerLibrary(freemarker.log.Logger.LIBRARY_NONE);
对某些人而言,它不起作用。我没有使用log4j,只是标准的java日志。
顺便说一下:我不打算改变Struts版本或日志框架。
答案 0 :(得分:1)
如果您使用的是Weblogic,则可以使用LogFilter禁用调试消息,如下所述:http://blog.technogemsinc.com/2012/09/weblogic-disabling-freemark-debug.html。
答案 1 :(得分:0)
查看配置java.util.logging的位置(或者可以记录commons)。如果记录器说它记录了来自FreeMaker的调试级消息,FreeMarker将发送调试级消息。这和任何其他库一样。
禁用FreeMarker日志记录肯定不是一个好主意,因为您希望查看警告和错误。 (LIBRARY_NONE
不起作用的原因当然是你已经记录了一些消息,因此你已经太晚了,因此FreeMarker日志记录已经初始化了。)