java - IReport - 作为输入流参数的子报表

标签 java jasper-reports

我有一个子报表,它运行良好,我还有一个使用子报表的报表,并且在 IReport 中也运行良好;我总是使用“文件路径”中的子报表。

但是,我想将报告添加到 JAR(OSGI bundle )中,并将使用 InputStream 执行报告以加载 Jasper 报告。

当我在子报表表达式属性中从“文件路径”更改为“输入流”时,使用 IReport Designer(版本 5.6.0)设计报表的工具给我一个“警告”。

警告是:

Unable to locate the subreport with expression: "$P{SUBREPORT_1}".

使用 IReport 运行报表的最佳方式是什么?

最佳答案

此警告仅意味着 iReport 正在尝试编译子报表,但找不到它。

当您使用“文件路径”时,您可以输入子报表文件的完整路径,iReport 会找到它。

由于您更改为InputStream,iReport 不知道如何找到子报表来编译它。

但是,当报表在您的应用程序内运行时,您将将该信息作为参数提供,它将正常运行。

如果您想停止该警告,只需禁用子报表的编译即可。转到工具选项iReport编译和执行,然后取消选中标有“编译子报表(如果可以)”的选项被发现)”。

关于java - IReport - 作为输入流参数的子报表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28585235/

相关文章:

java - 你能解释一下这个 Anagram 函数是如何工作的吗?

java - 在 spring 数据中使用什么代替 fetch.EAGER ?

java - 通过链接堆栈反转单链表

java - 使用递归而不是循环打印嵌套数组中的元素

hadoop - 是否可以使用 Spark 的 jdbc 驱动程序将 apache Spark 与 jasper 集成?

postgresql - 如何在ireport中有条件地运行sql?

java - JasperReport : net. sf.jasperreports.engine.fill.JRExpressionEvalException:计算表达式时出错:

java - Android SDK 水平 ScrollView

java - 将字符串字段转换为集合以传递给子报表?

java - FileInputStream 和 FileNotFoundException