Jasperreports - how to get JSON to populate a subreport

jasper-reports, json, subreport

Solution

I was struggling with a similar problem when using sub reports. It seems that the JSON datasource gets consumed by the main report so you need to invoke `subDataSource()` to get a fresh datasource for your sub reports and maybe for tables, too - haven't tested that yet though...

Data Source Expression: `((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}).subDataSource()`

Problem

I am trying to get a table to populate with the same data in my main report using Jasper/iReport. How can I get the Json to carry over? In Edit table datasource I've tried: ``` ((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}) new ((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}) $P{REPORT_DATA_SOURCE} $P{REPORT_CONNECTION} ``` All of which compile, but none of which actually generate a table. Any ideas? There is no method like cloneDataSource() for JSON so what is the alternative? My ultimate goal is simple: to pass in JSON data and use it to generate a chart, and then have a table displaying the same information. I have been working for days on this, Jasper is giving me a hard time. Please help!

Original source