You should be able to set the data source expression for the subreport:
new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{customerOrders})
The resulting xml should have a subreport tag that resembles:
<subreport> <reportElement uuid="e9fc4a60-3844-41b7-a38c-768f06f09b44" x="0" y="57" width="555" height="68"/> <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{customerOrders})]]></dataSourceExpression> <subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "report2_subreport1.jasper"]]></subreportExpression> </subreport>
The only thing you need to check is that the Language report property is set to Java .
source share