Я использую инструмент iReport вместе с JasperReports 1.3.4.
У меня есть основной отчет, который содержит два подотчета. Один из этих подотчетов имеет встроенный подотчет. Все файлы .jasper находятся в одном каталоге.
iReport сгенерировал параметр с именем SUBREPORT_DIR
. Выражение subreportExpression выражает имя файла подотчета как ![CDATA[$P{SUBREPORT_DIR} + "subreport.jasper"]
.
Все отлично работает, когда отчет генерируется из iReport. Но у меня есть небольшое веб-приложение на Java, которое я пытаюсь использовать для создания отчетов. Я передаю "SUBREPORT_DIR"
параметр JasperFillManager.fillReport(String sourceFileName, Map parameters, JRBeanCollectionDatasource)
. Для этого SUBREPORT_DIR
устанавливается каталог, в котором находится главный отчет.
fillReport выдает исключение:
net.sf.jasperreports.engine.JRException: Could not load object from location :
.sub-subreport.jasper.
Похоже, что первый подотчет пытается обработать его subreport(embedded subreport)
, но SUBREPORT_DIR
не разрешается или не используется должным образом для создания имени подотчета.
Есть что-то, что я пропускаю? Как обрабатывать этот сценарий?