【发布时间】:2015-08-16 07:47:30
【问题描述】:
我正在开发一个基于 Java swing 的独立应用程序,我必须将 Jasper 报告打包到 jar 文件中。报告也使用子报告。
当我在 Eclipse IDE 中运行报告时,它运行良好,这意味着所有带有或不带有子报告的报告都在正常运行;但是当我将它们打包到 jar 文件中时,只有没有子报表的报表才能正常工作,而使用子报表的报表会抛出异常-
Exception in thread "Thread-7" java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
at java.util.ArrayList$Itr.next(Unknown Source)
at net.sf.jasperreports.engine.fill.BaseFillHandle.notifyError(BaseFillHandle.java:210)
at net.sf.jasperreports.engine.fill.BaseFillHandle$ReportFiller.run(BaseFillHandle.java:135)
at java.lang.Thread.run(Unknown Source)
报告的结构如下目录层次结构-
+ main
|------+ reports
|--------+ invoice
| |--------> invoice_master.jasper
| |--------> invoice_sub_report.jasper
|---------> end_of_the_day_report.jasper
我的意思是 'end_of_the_day_report.jasper' 在 jar 包中工作正常,但 '/reports/invoice/invoice_master.jasper' 不行,抛出上述异常。
我已将“SUBREPORT_DIR”参数作为“/reports/invoice/”传递给“invoice_master.jasper”报告。
我在我的项目中使用“jasperreports 5.6.0”库。
【问题讨论】:
标签: java swing jasper-reports