I am trying to display Pie chart plot with Dataset but plot never shows up.
I get data from URL:
{"Data": [ { "x":1, "y":1 },
{ "x":2, "y":2 },
{ "x":3, "y":1 } ],
"PieData": [ { "label":"Test 1", "val":25},
{ "label":"Test 2", "val":50 },
{ "label":"Test 3", "val":25 } ]
}
I create dataset out of this:
This dataset is working (I do test for it):
After it I add Pie chart.
This is file generated from Jaspersoft Studio:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Created with Jaspersoft Studio version 6.14.0.final using JasperReports Library version 6.14.0-2ab0d8625be255bf609c78e1181801213e51db8f -->
<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="plot_test" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="dda2f154-3932-4aae-954c-a8d4c2eb1221">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="PLOTDataAdapter.xml"/>
<property name="net.sf.jasperreports.chart.pie.ignore.duplicated.key" value="true"/>
<subDataset name="DatasetPieChart" uuid="270d44e8-b17b-4da2-b066-80c1d1d1d836">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="PLOTDataAdapter.xml"/>
<parameter name="JSON_INPUT_STREAM" class="java.io.InputStream" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.source" class="java.lang.String" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.sources" class="java.util.List" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.date.pattern" class="java.lang.String" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.number.pattern" class="java.lang.String" isForPrompting="false"/>
<parameter name="JSON_LOCALE" class="java.util.Locale" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.locale.code" class="java.lang.String" isForPrompting="false"/>
<parameter name="JSON_TIME_ZONE" class="java.util.TimeZone" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.timezone.id" class="java.lang.String" isForPrompting="false"/>
<queryString language="JSON">
<![CDATA[PieData]]>
</queryString>
<field name="label" class="java.lang.String">
<property name="net.sf.jasperreports.jsonql.field.expression" value="label"/>
<fieldDescription><![CDATA[label]]></fieldDescription>
</field>
<field name="val" class="java.lang.Integer">
<property name="net.sf.jasperreports.jsonql.field.expression" value="val"/>
<fieldDescription><![CDATA[val]]></fieldDescription>
</field>
<group name="label">
<groupExpression><![CDATA[$F{label}]]></groupExpression>
</group>
<group name="val">
<groupExpression><![CDATA[$F{val}]]></groupExpression>
</group>
</subDataset>
<parameter name="JSON_INPUT_STREAM" class="java.io.InputStream" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.source" class="java.lang.String" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.sources" class="java.util.List" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.date.pattern" class="java.lang.String" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.number.pattern" class="java.lang.String" isForPrompting="false"/>
<parameter name="JSON_LOCALE" class="java.util.Locale" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.locale.code" class="java.lang.String" isForPrompting="false"/>
<parameter name="JSON_TIME_ZONE" class="java.util.TimeZone" isForPrompting="false"/>
<parameter name="net.sf.jasperreports.json.timezone.id" class="java.lang.String" isForPrompting="false"/>
<queryString language="JSON">
<![CDATA[PieData]]>
</queryString>
<field name="label" class="java.lang.String">
<property name="net.sf.jasperreports.json.field.expression" value="label"/>
<fieldDescription><![CDATA[label]]></fieldDescription>
</field>
<field name="val" class="java.lang.Integer">
<property name="net.sf.jasperreports.json.field.expression" value="val"/>
<fieldDescription><![CDATA[val]]></fieldDescription>
</field>
<background>
<band splitType="Stretch"/>
</background>
<title>
<band height="299" splitType="Stretch">
<pieChart>
<chart evaluationTime="Report">
<reportElement x="40" y="10" width="200" height="200" uuid="8b79198a-e961-43fe-9025-79dfd644a086"/>
<chartTitle/>
<chartSubtitle/>
<chartLegend/>
</chart>
<pieDataset>
<dataset resetType="Report">
<datasetRun subDataset="DatasetPieChart" uuid="6e4b0373-6f63-40cc-a3ce-da215a6468bb">
<connectionExpression><![CDATA[$P{REPORT_CONNECTION}]]></connectionExpression>
</datasetRun>
</dataset>
<keyExpression><![CDATA["BLA"]]></keyExpression>
<valueExpression><![CDATA[$F{val}]]></valueExpression>
<labelExpression><![CDATA[$F{label}]]></labelExpression>
</pieDataset>
<piePlot>
<plot/>
<itemLabel/>
</piePlot>
</pieChart>
</band>
</title>
</jasperReport>
And the preview doesn't generates anything. What am I missing in the process?
BR!