iReport: вложенные отчеты, использующие XPath (источник данных XML), отображаются пустыми

Я использую iReport 3.5.2 для создания отчета с использованием источника данных XML. Я следовал примеру «Шаг за шагом» из раздела «Подотчеты» «Полного руководства по iReport», и мне удалось заставить пример работать с SQL. Однако, когда я пытаюсь использовать источник данных XML и XPath, подотчет выходит пустым в представлении основного отчета (хотя сам по себе он отображается нормально).

То, что я делаю, довольно прямолинейно:

  • Я создаю основной отчет
  • Я помещаю в него подотчет, который передает параметр со значением, например "/Foo/Bar" (Xpath для определенного списка данных, которые я хочу во вложенном отчете)
  • Я размещаю поле в подотчете, которое ссылается на этот XPath, используя $P{}

Опять же, я могу отобразить только подотчет и ввести значение параметра, например «/Foo/Bar», и отчет будет отображаться так, как ожидалось. Я попытался полностью удалить XPath из уравнения и просто создать поле со значением параметра, и все равно получаю пустую страницу. Это заставляет меня подозревать, что что-то более глубокое, чем XML/XPath, неверно.

Спасибо! Шон Персер-Хаскелл, Kewill PLC


person Community    schedule 12.06.2009    source источник


Ответы (1)


Я наткнулся на ваш пост и разделил вашу боль. Я был в точно такой же ситуации. Код в учебнике по источнику данных iReport/XML/вложенному отчету не работает. Я нашел это на форумах яшмы, и это решило мои проблемы. По сути, выражение источника данных, используемое в примере, неверно, вам необходимо заменить его запросом xpath для элементов отчета вложенного отчета. что-то вроде этого:

((net.sf.jasperreports.engine.data.JRXmlDataSource)$P{REPORT_DATA_SOURCE}).subDataSource("//YOUR_SUBREPORT_ENTITY")

http://jasperforge.org/plugins/espforum/view.php?group_id=83&forumid=101&topicid=48534

person revdrjrr    schedule 22.04.2010