Java ireport中的JSON数组
我正在使用ireport和json数据源生成报告 问题是ireport没有在json数组中循环 我的JSON文件内容是Java ireport中的JSON数组,java,json,jasper-reports,ireport,Java,Json,Jasper Reports,Ireport,我正在使用ireport和json数据源生成报告 问题是ireport没有在json数组中循环 我的JSON文件内容是 { "PartOn":[ { "TypeOfPart":"Rotable" }, { "TypeOfPart":"Rotable1" }] } <?xml version="1.0" encodi
{
"PartOn":[
{
"TypeOfPart":"Rotable"
},
{
"TypeOfPart":"Rotable1"
}]
}
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Test" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="746af965-a199-4603-be60-5c5ee40d397c">
<queryString language="json">
<![CDATA[PartOn]]>
</queryString>
<field name="TypeOfPart" class="java.lang.String">
<fieldDescription><![CDATA[TypeOfPart]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement x="280" y="2" width="100" height="20" uuid="ea8134cf-d2db-46ea-923f-5f1feadbd50e"/>
<text><![CDATA[PartOn.TypeOfPart]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<textField>
<reportElement x="280" y="68" width="100" height="20" uuid="66712268-3adc-4c5e-bbd4-f77fe1a83b18"/>
<textFieldExpression><![CDATA[$F{TypeOfPart}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
我的jrxml文件内容是
{
"PartOn":[
{
"TypeOfPart":"Rotable"
},
{
"TypeOfPart":"Rotable1"
}]
}
<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="Test" language="groovy" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="746af965-a199-4603-be60-5c5ee40d397c">
<queryString language="json">
<![CDATA[PartOn]]>
</queryString>
<field name="TypeOfPart" class="java.lang.String">
<fieldDescription><![CDATA[TypeOfPart]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<columnHeader>
<band height="61" splitType="Stretch">
<staticText>
<reportElement x="280" y="2" width="100" height="20" uuid="ea8134cf-d2db-46ea-923f-5f1feadbd50e"/>
<text><![CDATA[PartOn.TypeOfPart]]></text>
</staticText>
</band>
</columnHeader>
<detail>
<band height="125" splitType="Stretch">
<textField>
<reportElement x="280" y="68" width="100" height="20" uuid="66712268-3adc-4c5e-bbd4-f77fe1a83b18"/>
<textFieldExpression><![CDATA[$F{TypeOfPart}]]></textFieldExpression>
</textField>
</band>
</detail>
</jasperReport>
查看报告时,报告中不打印任何值
帮助我解决问题。我在前面提到的json数据源创建期间的ireport中找到了一个解决方案
"Use the report JSON expression when filling the report"
这就解决了问题