在我的本地机器上,我可以成功下载报告。当我将jaspers和jrxml文件复制到我的生产服务器时,它显示此错误。请建议我。
net.sf.jasperreports.engine.JRException: Could not load object from location : D:\Ravi Workspace\Openbrm\open-brm-openbrm-2.0\resources\designs\ageing-esr-40-srpski-subreport.jasper
在我的报告中,我已经定义了这样,我的所有jasper文件都在同一个文件夹中。
<parameter name="SUBREPORT_DIR" class="java.lang.String" isForPrompting="false">
<defaultValueExpression><![CDATA["D:\\Ravi Workspace\\Openbrm\\open-brm-openbrm-2.0\\resources\\designs\\"]]></defaultValueExpression>
</parameter>
<dataSourceExpression><![CDATA[new net.sf.jasperreports.engine.data.JRBeanCollectionDataSource($P{invoiceInfoList})]]></dataSourceExpression>
<subreportExpression><![CDATA[$P{SUBREPORT_DIR} + "ageing-esr-40-srpski-subreport.jasper"]]></subreportExpression>
答案 0 :(得分:0)
您使用的路径直接链接到您的硬盘。服务器的文件夹结构将有所不同。
根据这个答案https://stackoverflow.com/a/3387463/5191221,无法使用子报告的相对路径。
因此,您可以将路径设置为子报表所在的确切服务器路径(我会不惜一切代价避免这种情况)。
或者您可以将子报表放在与主报表相同的文件夹中,然后直接调用它:
<subreportExpression><![CDATA["ageing-esr-40-srpski-subreport.jasper"]]></subreportExpression>