加载预编译的 jasper 文件会引发异常:从文件加载对象时未找到类

问题描述 投票:0回答:1

在 Eclipse 中使用 JasperReports 6.11.0,我将 .jrxml 文件预编译为 .jasper 文件。我的问题是,当我使用 jasper 文件作为报告加载时,它会抛出异常

net.sf.jasperreports.engine.JRException: Class not found when loading object from file
。这是我正在使用的代码:

JasperReport jasperReport = (JasperReport) JRLoader
                .loadObjectFromFile("src/main/resources/Report.jasper");
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, new JREmptyDataSource());

请注意,我尝试使用模板,但仍然抛出相同的异常。另外,当我在Java代码中编译jrxml时,它工作得很好。

InputStream input = new ClassPathResource("jasper.jrxml").getInputStream();
JasperDesign jasperDesign = JRXmlLoader.load(input);
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);

JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, new JREmptyDataSource());
java jasper-reports
1个回答
0
投票

将搜索路径交换为此:

FileInputStream inputStream = new FileInputStream(Faces.getRealPath("/reports/produtos.jrxml")); JasperReport 卡米尼奥 = JasperCompileManager.compileReport(inputStream);

© www.soinside.com 2019 - 2024. All rights reserved.