JasperReport:在执行批量导出时继续执行

时间:2016-07-29 09:52:06

标签: java jasper-reports

我在JaseReports中使用以下代码执行批量导出:

JRExporter e = new JRPdfExporter();
e.setParameter(JRExporterParameter.JASPER_PRINT_LIST, jasperPrints);
e.setParameter(JRPdfExporterParameter.OUTPUT_STREAM, outStream);
response.setContentType("application/pdf");
response.setHeader("Content-Disposition", "attachment; filename=test.pdf");
e.exportReport();

它成功导出但每个"合并了pdf"在一个单独的页面上。 我希望不断地将每个合并的页面放在一个单独的页面上。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

由于您希望保留页面布局,因此无法使用isIgnorePagination="true"(它会创建一个连续的布局),AFIK JRPdfExporter上没有任何设置可以不考虑单{{ {1}}作为个别页面。

您拥有的解决方案是:

  1. 创建主报告一个新的jrxml并将此.jasper作为子报告包含在此中。这是您可以控制主报告jrxml中的分页符。

  2. 精心制作您的JasperPrint代码列表,将所有组件移至单个JasperPrint,确定它们是否应位于当前页面或者添加到新页面,这个方法相当复杂,所以我强烈建议第一种方法。

  3. BTW :您使用的是已弃用的代码,当前版本的代码应为

    JasperPrint