我正在使用iReport工具與JasperReports 1.3.4結合使用。如何將jasper文件路徑傳遞給子報表子報表
我有一個主報告,其中包含兩個子報表。其中一個子報表具有嵌入式子報表。所有.jasper文件都駐留在同一個目錄中。
iReport生成了名爲SUBREPORT_DIR
的參數。 subreportExpression表示子報告文件名爲![CDATA[$P{SUBREPORT_DIR} + "subreport.jasper"]
。
從iReport內生成報告時,一切正常。但是,我正在嘗試使用一個小型Java Web應用程序來生成報告。我通過"SUBREPORT_DIR"
參數JasperFillManager.fillReport(String sourceFileName, Map parameters, JRBeanCollectionDatasource)
。此SUBREPORT_DIR
設置爲主報告所在的目錄。
fillReport拋出異常:
net.sf.jasperreports.engine.JRException: Could not load object from location :
.sub-subreport.jasper.
看來,第一子報表試圖處理其subreport(embedded subreport)
,但SUBREPORT_DIR
沒有得到解決,或者使用得當生成子報表的名稱。
有什麼我失蹤了嗎?應如何處理這種情況?
從異常消息似乎你正在使用「」作爲SUBREPORT_DIR參數。如果是這樣,請嘗試使用「./」或「」。 – 2010-09-13 19:58:28
在哪裏放「./」?我很困惑 – Manu 2010-09-14 06:55:26
現在我想你正在使用: parameters.put(「SUBREPORT_DIR」,「。」); JasperFillManager.fillReport(String sourceFileName,Map parameters,JRBeanCollectionDatasource); 嘗試使用: parameters.put(「SUBREPORT_DIR」,「」); – 2010-09-14 08:00:25