如何在Android版PDFReporter中使用列表组件(c:list)?

如何在Android版PDFReporter中使用列表组件(c:list)?,android,jasper-reports,pdf-generation,Android,Jasper Reports,Pdf Generation,我使用iReport打印了JasperReports的pdf 然而,当我尝试使用PDFReporter为Android打印pdf时,它不起作用 <componentElement> <reportElement x="215" y="30" width="110" height="50" uuid="2a10bb8c-3e40-4669-886a-22cdd9a11216"/> <c:list xmlns:c="htt

我使用iReport打印了JasperReports的pdf

然而,当我尝试使用PDFReporter为Android打印pdf时,它不起作用

<componentElement>
            <reportElement x="215" y="30" width="110" height="50" uuid="2a10bb8c-3e40-4669-886a-22cdd9a11216"/>
            <c:list xmlns:c="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" printOrder="Vertical">
                <datasetRun subDataset="Dataset1" uuid="c27c01dc-9026-40c5-8c8f-4b1090d99cf9">
                    <!--<><![CDATA[$P{REPORT_CONNECTION}]]></>-->
                </datasetRun>
                <c:listContents height="50" width="110">
                    <textField>
                        <reportElement x="43" y="17" width="100" height="30" uuid="a190eb91-8dfa-476e-afcb-3336ac79ac99"/>
                        <textFieldExpression><![CDATA[$F{Child_1_Name}]]></textFieldExpression>
                    </textField>
                </c:listContents>
            </c:list>
        </componentElement>
之后,我尝试删除schemaLocation属性,但它引发另一个错误:

E/Digester: Begin event threw exception
org.oss.pdfreporter.exception.ConversionException: Cannot set Property width on Object org.oss.pdfreporter.components.list.DesignListContents@2525b0fd
    at org.oss.pdfreporter.beans.BeanUtils.setProperty(BeanUtils.java:35)
    at org.oss.pdfreporter.beans.BeanUtils.populate(BeanUtils.java:100)
    at org.oss.pdfreporter.uses.org.apache.digester.SetPropertiesRule.begin(SetPropertiesRule.java:240)
    at org.oss.pdfreporter.uses.org.apache.digester.AbstractRule.begin(AbstractRule.java:65)
    at org.oss.pdfreporter.uses.org.apache.digester.impl.Digester.startElement(Digester.java:176)
    at org.oss.pdfreporter.xml.parsers.wrapper.UnmarshallingContentHandler.startElement(UnmarshallingContentHandler.java:56)
    at org.apache.harmony.xml.ExpatParser.startElement(ExpatParser.java:143)
    at org.apache.harmony.xml.ExpatParser.appendBytes(Native Method)
    at org.apache.harmony.xml.ExpatParser.parseFragment(ExpatParser.java:513)
    at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:474)
    at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:316)
    at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:279)
    at org.oss.pdfreporter.xml.parsers.XmlParser.parse(XmlParser.java:49)
    at org.oss.pdfreporter.uses.org.apache.digester.impl.Digester.parse(Digester.java:373)
    at org.oss.pdfreporter.uses.org.apache.digester.DelegatingAbstractDigester.parse(DelegatingAbstractDigester.java:84)
    at org.oss.pdfreporter.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:241)
    at org.oss.pdfreporter.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:228)
    at org.oss.pdfreporter.engine.xml.JRXmlLoader.load(JRXmlLoader.java:215)
    at org.oss.pdfreporter.PdfReporter.loadReport(PdfReporter.java:315)
    at org.oss.pdfreporter.PdfReporter.exportSqlReport(PdfReporter.java:176)
    at org.oss.pdfreporter.PdfReporter.exportPdf(PdfReporter.java:152)
    at com.csc.ipos.pdfexporter.ReportExporter.exportUsingXMLDatasource(ReportExporter.java:88)
    at com.csc.ipos.TestPDFExportActivity$3.run(TestPDFExportActivity.java:99)
    at java.lang.Thread.run(Thread.java:818)
 Caused by: java.lang.IllegalArgumentException: field org.oss.pdfreporter.components.list.DesignListContents.width has type java.lang.Integer, got java.lang.String
    at java.lang.reflect.Field.set(Native Method)
    at java.lang.reflect.Field.set(Field.java:557)
    at org.oss.pdfreporter.beans.BeanUtils.setProperty(BeanUtils.java:33)
listcontent组件的height属性也会发生这种情况

注意:我在“jasperreports_extension.properties”中添加了下面的语句


你读过我的问题了吗?这正是针对Android的,关注c:list。除此之外,“子数据集1”在本例中并不重要。你用过PDFRporter吗?它不像JasperReport那样容易使用。PDFReporter不支持某些功能,例如(图表、条形码、表格…),但当我阅读PDFReporter的源代码时,我发现它可以使用“列表”,但我不知道如何使用它。@Petter Friberg我编辑了我的问题。我希望它更清楚。谢谢好得多,现在其他用户可以看到他们是否有相同的问题,我会看看我是否能找到可以帮助你的东西。尝试使用此定义
@Petter Friberg谢谢你的帮助,但它仍然显示相同的错误
E/Digester: Begin event threw exception
org.oss.pdfreporter.exception.ConversionException: Cannot set Property width on Object org.oss.pdfreporter.components.list.DesignListContents@2525b0fd
    at org.oss.pdfreporter.beans.BeanUtils.setProperty(BeanUtils.java:35)
    at org.oss.pdfreporter.beans.BeanUtils.populate(BeanUtils.java:100)
    at org.oss.pdfreporter.uses.org.apache.digester.SetPropertiesRule.begin(SetPropertiesRule.java:240)
    at org.oss.pdfreporter.uses.org.apache.digester.AbstractRule.begin(AbstractRule.java:65)
    at org.oss.pdfreporter.uses.org.apache.digester.impl.Digester.startElement(Digester.java:176)
    at org.oss.pdfreporter.xml.parsers.wrapper.UnmarshallingContentHandler.startElement(UnmarshallingContentHandler.java:56)
    at org.apache.harmony.xml.ExpatParser.startElement(ExpatParser.java:143)
    at org.apache.harmony.xml.ExpatParser.appendBytes(Native Method)
    at org.apache.harmony.xml.ExpatParser.parseFragment(ExpatParser.java:513)
    at org.apache.harmony.xml.ExpatParser.parseDocument(ExpatParser.java:474)
    at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:316)
    at org.apache.harmony.xml.ExpatReader.parse(ExpatReader.java:279)
    at org.oss.pdfreporter.xml.parsers.XmlParser.parse(XmlParser.java:49)
    at org.oss.pdfreporter.uses.org.apache.digester.impl.Digester.parse(Digester.java:373)
    at org.oss.pdfreporter.uses.org.apache.digester.DelegatingAbstractDigester.parse(DelegatingAbstractDigester.java:84)
    at org.oss.pdfreporter.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:241)
    at org.oss.pdfreporter.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:228)
    at org.oss.pdfreporter.engine.xml.JRXmlLoader.load(JRXmlLoader.java:215)
    at org.oss.pdfreporter.PdfReporter.loadReport(PdfReporter.java:315)
    at org.oss.pdfreporter.PdfReporter.exportSqlReport(PdfReporter.java:176)
    at org.oss.pdfreporter.PdfReporter.exportPdf(PdfReporter.java:152)
    at com.csc.ipos.pdfexporter.ReportExporter.exportUsingXMLDatasource(ReportExporter.java:88)
    at com.csc.ipos.TestPDFExportActivity$3.run(TestPDFExportActivity.java:99)
    at java.lang.Thread.run(Thread.java:818)
 Caused by: java.lang.IllegalArgumentException: field org.oss.pdfreporter.components.list.DesignListContents.width has type java.lang.Integer, got java.lang.String
    at java.lang.reflect.Field.set(Native Method)
    at java.lang.reflect.Field.set(Field.java:557)
    at org.oss.pdfreporter.beans.BeanUtils.setProperty(BeanUtils.java:33)
net.sf.jasperreports.extension.registry.factory.components=org.oss.pdfreporter.components.ComponentsExtensionsRegistryFactory