【发布时间】:2016-08-21 17:52:41
【问题描述】:
我需要调试 Jasper Reports 才能知道为什么我的报告显示为空,嗯,它只显示静态信息以及传递的参数,但我有一个子报告应该列出一些信息部分为空。
按照网络中的一些示例,我使用了以下 log4j2.xml 配置文件,但是:
- 我没有创建日志文件,嗯,文件已创建但它仍然是空的。
- 如何配置从 Jasper Reports 获取输出调试?如果子报告为空,我想它一定是在某个地方失败了,所以我需要发现发生了什么。
这是我的 log4j2.xml 配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="debug">
<Properties>
<Property name="basePath">E:\\logs</Property>
</Properties>
<Appenders>
<RollingFile name="fileLogger" fileName="${basePath}/urnavirtual.log" filePattern="${basePath}/urnavirtual-%d{yyyy-MM-dd}.log">
<PatternLayout>
<pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
</Policies>
</RollingFile>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n" />
</Console>
</Appenders>
<Loggers>
<Logger name="net.sf.jasperreports" level="ALL" additivity="false">
<appender-ref ref="fileLogger" level="ALL" />
</Logger>
<Root level="ALL" additivity="false">
<appender-ref ref="console" />
</Root>
</Loggers>
</Configuration>
在我上次的测试中,我添加了带有“net.sf.jasperreports”的记录器,但我猜有些东西配置得不好。
- 是否应设置任何属性以让 Jasper Reports 知道它必须记录其内部错误?
- 我应该在我的 log4j2.xml 文件中使用哪些更改才能成功记录 Jasper 报告错误
我正在使用带有 Java 8 的 Eclipse Neon。
这是我的第一个问题,如果我不清楚或违反任何 StackOverFlow 规则,我深表歉意。
非常感谢,
编辑: 我已经有 log4j,但即使使用 level=DEBUG,我在日志中也没有调试输出。
【问题讨论】:
-
您好,Alex,感谢您抽出宝贵时间,不,不是重复的;您指出的线程,在他们建议使用 log4j 的该线程的唯一答案中,不同之处在于我已经在使用它,但是我无法看到调试消息,而 Tonakai 回答我能够查看日志中的调试消息。 Tonakai 回答标记为已接受。
标签: java debugging jasper-reports log4j log4j2