如何在JasperReports中禁用这些日志消息?

时间:2011-09-29 19:36:03

标签: java jasper-reports

现在,在使用Jasper生成PDF时,我收到了这些消息:

INFO:覆盖bean'steddingAreaType'的bean定义:替换[Generic bean:class [org.springframework.beans.factory.config.FieldRetrievingFactoryBean];范围=单;抽象= FALSE; lazyInit = FALSE; autowireCandidate = TRUE; autowireMode = 0; dependencyCheck = 0; factoryBeanName = NULL; factoryMethodName = NULL; initMethodName = NULL; destroyMethodName = null] with [Generic bean:class [org.springframework.beans.factory.config.FieldRetrievingFactoryBean];范围=单;抽象= FALSE; lazyInit = FALSE; autowireCandidate = TRUE; autowireMode = 0; dependencyCheck = 0; factoryBeanName = NULL; factoryMethodName = NULL; initMethodName = NULL; destroyMethodName =空] 2011年9月26日上午10:42:57 org.springframework.beans.factory.support.DefaultListableBeanFactory registerBeanDefinition

显然我需要在某处设置日志级别,只是不确定命令。任何帮助表示赞赏!我不是Java专家,我在Ruby应用程序中使用JR嵌入式为我的客户提供了很好的PDF。

3 个答案:

答案 0 :(得分:2)

我不是特别了解Jasper,但这是通用方法。您需要更改log4j根日志级别。

查找文件log4j.properties。找到一个看起来像这样的行:

log4j.rootCategory=INFO

将WARO替换为WARN。重新启动服务器进程。

答案 1 :(得分:2)

我有同样的问题,我从命令行运行一个java程序,该程序输出一个pdf到stdout,PHP将其重定向到浏览器,一些库(spring.jar)输出了大量的INFO,使pdf输出瘫痪,我尝试用java -Dlog4j.rootCategory=WARN运行java命令行,但由于某种原因它不起作用,所以我最终通过以编程方式设置日志记录级别来解决它:

import org.apache.log4j.Logger;
import org.apache.log4j.Level;

Logger logger = Logger.getRootLogger();
logger.setLevel(Level.WARN);

确保您的CLASSPATH中有log4j-1.2.16.jar。

答案 2 :(得分:1)

我可以使用此处列出的两个答案执行此操作。我创建了一个log4j.properties文件并将其添加到其中:

log4j.rootCategory=WARN

但我还必须在我的类路径中添加log4j。

相关问题