iReportを使用してjasperreports2.0.4で作成されたレポートがあります。2つのサブレポートがあります。これらの2つのサブレポートは同じjrxmlを共有します。パラメータでサブレポートのレポート式としてjrxmlを渡します。私はこのパラメータのためにこのコードを持っています
<parameter name="SUB_EXP" class="net.sf.jasperreports.engine.JasperReport"/>
すべてが正常に動作します。問題は、2つのサブレポートデータソースにあります
これらのサブレポートのデータソースは、パラメーターとして渡されたPOJOの同じリストから取得されます
<parameter name="SUB_SRC" class="com.mycompany.myapplication.core.persistence.MyListDataSource"/>
2つのサブレポートのサブレポートjrxmlコードは次のとおりです
1位
<subreport>
<reportElement positionType="Float" x="0" y="0" width="570" height="1"/>
<dataSourceExpression>
<![CDATA[$P{SUB_SRC}]]>
</dataSourceExpression>
<subreportExpression class="net.sf.jasperreports.engine.JasperReport">
<![CDATA[$P{SUB_EXP}]]>
</subreportExpression>
</subreport>
2位
<subreport>
<reportElement positionType="Float" x="0" y="1" width="570" height="1"/>
<dataSourceExpression>
<![CDATA[$P{SUB_SRC}]]>
</dataSourceExpression>
<subreportExpression class="net.sf.jasperreports.engine.JasperReport">
<![CDATA[$P{SUB_EXP}]]>
</subreportExpression>
</subreport>
ご覧のとおり、2つのサブレポートのコードは同じです。
奇妙なことに、2つのサブレポートが表示されますが、最初のサブレポートのデータは完全ではなく、欠落しているデータは2番目のサブレポートにあります。予想される動作は、2つのサブレポートが2つの同じ完全なデータである必要があるということです。
ここで、ある種の並行性の問題に直面していますか?誰かが確認できたら...