Hy, and instead inject in a Table componant (jr:table), it's possible to inject datas in a subReport ? As exemple with Table and DataSetRun + DataSourceExpression (is working) : <jr:table> <datasetRun subDataset="Dataset1"> <dataSourceExpression><![CDATA[((com.jaspersoft.webservice.data.query.IWSDataSource)$P{REPORT_DATA_SOURCE}).clone("results", $P{SubFieldsMap})]]></dataSourceExpression> As wanted for call, a subreport for each node : <subreport> <reportElement/> <dataSourceExpression><![CDATA[((com.jaspersoft.webservice.data.query.IWSDataSource)$P{REPORT_DATA_SOURCE}).clone("@.results", $P{SubFieldsMap})]]></dataSourceExpression> <subreportExpression><![CDATA["testsub_sub.jasper"]]></subreportExpression> </subreport> With a JSON like : [{"id": 123,"result": [{ "symbol": "S_A_1" },{ "symbol": "S_A_2" }]},{"id": 456,"result": [{ "symbol": "S_B_1" },{ "symbol": "S_B_2" }]}] For first subreport call, it will use array S_A_1, and S_A_2 For second subreport call, it will use array S_B_1, and S_B_2