возможно ли использовать JSON в качестве моего subDataSource, когда основным источником данных в отчете jasper является SQL? Выдает ошибку: Error evaluating expression for source text: ((net.sf.jasperreports.engine.data.JsonDataSource) $P).subDataSource("kontrolaOpatreni")
Целый младший xml довольно длинный, я даю только фрагменты кода. Определение JSON набор данных:
<subDataset name="KontrolZjisteniOpatreni" uuid="920f605e-7cc4-4af4-9777-9f92136beea3">
<property name="com.jaspersoft.studio.data.defaultdataadapter" value="protokolOKontrole"/>
<queryString language="json">
<![CDATA[kontrolaOpatreni]]>
</queryString>
<field name="stavVeci" class="java.lang.String">
<property name="net.sf.jasperreports.json.field.expression" value="stavVeci"/>
</field>
<field name="zakon" class="java.lang.String">
<property name="net.sf.jasperreports.json.field.expression" value="zakon"/>
</field>
</subDataset>
Определение таблицы с использованием JSOPN dataSource:
<componentElement>
<reportElement positionType="Float" x="10" y="10" width="543" height="15" uuid="a9ec6c15-f338-4d78-b822-d2e3943b40c7">
<property name="com.jaspersoft.studio.layout" value="com.jaspersoft.studio.editor.layout.VerticalRowLayout"/>
<property name="com.jaspersoft.studio.table.style.table_header" value="Table 3_TH"/>
<property name="com.jaspersoft.studio.table.style.column_header" value="Table 3_CH"/>
<property name="com.jaspersoft.studio.table.style.detail" value="Table 3_TD"/>
<property name="net.sf.jasperreports.export.headertoolbar.table.name" value="kontrola opatreni"/>
</reportElement>
<jr:table xmlns:jr="http://jasperreports.sourceforge.net/jasperreports/components" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports/components http://jasperreports.sourceforge.net/xsd/components.xsd">
<datasetRun subDataset="KontrolZjisteniOpatreni" uuid="a149c9c6-a485-48d9-81bf-6f968c31b4ec">
<dataSourceExpression><![CDATA[((net.sf.jasperreports.engine.data.JsonDataSource) $P{REPORT_DATA_SOURCE}).subDataSource("kontrolaOpatreni")]]></dataSourceExpression>
</datasetRun>
<jr:column width="543" uuid="99799c27-0052-4c04-a835-806a06fe6b7b">
<property name="com.jaspersoft.studio.components.table.model.column.name" value="Column1"/>
<jr:detailCell height="15">
<textField isStretchWithOverflow="true">
<reportElement positionType="Float" stretchType="RelativeToTallestObject" x="0" y="0" width="543" height="15" isPrintWhenDetailOverflows="true" uuid="32b653fa-febb-440f-a490-a22775452781"/>
<textElement textAlignment="Left" verticalAlignment="Middle" markup="html">
<font fontName="Times New Roman"/>
<paragraph leftIndent="4"/>
</textElement>
<textFieldExpression><![CDATA[$F{stavVeci} + "zákon: " + $F{zakon}]]></textFieldExpression>
</textField>
</jr:detailCell>
</jr:column>
</jr:table>
</componentElement>
Я знаю, что можно использовать SQL в качестве subDataSource, когда основным источником данных является JSON, но мне нужно использовать его по-другому.
Я использую TIBCO Jaspersoft® Studio 6.6.0