我有一个使用JasperReports将数据导出到 Excel、PDF 和 CSV 的网络应用程序。这是一个使用DynamicJasperReports插件的 grails 应用程序,它使用 jrxml 文件作为报告的模板。
这是可行的,但在我们的 tomcat 配置进行了一些更改后已损坏。它仍然在 grails 开发模式下本地工作。
FastReportBuilder drb = new FastReportBuilder()
drb.setTemplateFile("resources/reportTemplate.jrxml")
DynamicReport report = reportBuilder.call(drb)
JRDataSource ds = new JRMapCollectionDataSource(data)
JasperPrint jp = DynamicJasperHelper.generateJasperPrint(report, new ClassicLayoutManager(), ds)
ReportWriter reportWriter = ReportWriterFactory.getInstance().getReportWriter(jp, format, [:])
reportWriter.writeTo(response)
它抛出这个错误:
java.lang.NullPointerException
at ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperDesign(DynamicJasperHelper.java:151)
at ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperReport(DynamicJasperHelper.java:448)
at ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperPrint(DynamicJasperHelper.java:234)
at ar.com.fdvs.dj.core.DynamicJasperHelper.generateJasperPrint(DynamicJasperHelper.java:187)
at com.giivpro.services.analytics.JasperReportsService.runReport(JasperReportsService.groovy:30)