0
我有這樣的json DS:在Jasper Reports中添加json subDataSource的正確方法是什麼?
{
"customername":"home",
"workSiteRows":[
{
"invoiceRows":[
{
"candidateName":"name1",
"units":"13:00"
},
{
"candidateName":"name2",
"units":"18:30"
}
],
"workSiteName":"wsname1"
},
{
"invoiceRows":[
{
"candidateName":"name1",
"units":"13:00"
},
{
"candidateName":"name2",
"units":"18:30"
}
],
"workSiteName":"wsname2"
}
]
}
在我的.jrxml文件,我已經定義了一個報表,我試圖創建一個subDataSource傳遞給該報表。
<subreport isUsingCache="false">
<reportElement x="0" y="10" width="555" height="30" uuid="b2d96c34-ad5d-4eb2-b218-43aad4e09282" />
<dataSourceExpression><![CDATA[((net.sf.jasperreports.engine.data.JsonDataSource)$P{REPORT_DATA_SOURCE}).dataSource("workSiteRows")]]></dataSourceExpression>
<subreportExpression><![CDATA[$P{REPORT_DIR} + "\\invoice_ws_row.jasper"]]></subreportExpression>
</subreport>
我不斷收到以下異常: 錯誤填寫打印...
java.lang.NoClassDefFoundError: org/codehaus/jackson/JsonNode java.lang.ClassNotFoundException: org.codehaus.jackson.JsonNode
但它不工作。 問題是,目前傑克遜核心是根據回購"com.fasterxml.jackson.core"
而iReport不斷要求"org.codehaus.jackson.core"
。
嘗試尋找位於org.codehaus下的老版本的jackson核心,並將它們添加到iReport類路徑中,但它仍然無效。 任何想法?
它的工作原理。謝謝。 *** facepalm ***,順便說一句,你有沒有使用Jasper Reports的其他選擇? – ionutab
不客氣。我只知道賈斯珀報告,它的免費和最好的解決方案,但仍然有很多facepalm時刻使用它:) – hering
我正在使用JasperSoft Studio 6.2.1,並且不可能使用'subDataSource'方法而無需投射到'net.sf.jasperreports.engine.data.JsonDataSource' –