A JavaBean enthält a java.util.List. Wie können die Daten dieser Liste im Detail-Band eines JasperReports-Dokuments angezeigt werden?
// Java source to generate the report ... // DataSource using JRBeanCollectionDataSource private static JRDataSource getDataSource() { Collection<BeanWithList> coll = ...; return new JRBeanCollectionDataSource(coll); } // JavaBean public class BeanWithList { private List<String> cities; // ... // Ensure a public getter for field extraction public List<String> getCities() { return this.cities; } } // jrxml file ... // Subdataset for iterating through the list <subDataset name="dataset1"> <field name="city" class="java.lang.String"> <fieldDescription><![CDATA[_THIS]]></fieldDescription> </field> </subDataset> // Detail band with jr:list component <detail> ... <componentElement> <!-- jr:list component --> <jr:list ...> <datasetRun subDataset="dataset1"> <!-- DataSource expression using JRBeanCollectionDataSource --> <dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($F{cities})]]></dataSourceExpression> </datasetRun> <jr:listContents ...> <textField ...> <textFieldExpression><![CDATA[$F{city}]]></textFieldExpression> </textField> </jr:listContents> </jr:list> </componentElement> ... </detail> ...
Diese Konfiguration generiert einen Bericht, der die Daten der Liste im Bereich Detail anzeigt.
Andere relevante Fragen befassen sich damit Thema:
Das obige ist der detaillierte Inhalt vonWie zeige ich die Liste einer JavaBean im Detailband von JasperReports an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!