【发布时间】:2014-09-21 14:45:46
【问题描述】:
我正在编写一个应该生成碧玉报告的 java servlet。我已将 jrxml 存储在名为 jrxml (WebContent/jrxml/theFile.jrxml) 的文件夹中的 WebContent 文件夹下。首先,我使用以下代码生成报告:
InputStream input = new FileInputStream(new File("/jrxml/employeesList.jrxml"));
JasperDesign jasperDesign = JRXmlLoader.load(input);
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
但是,我不断收到“没有这样的文件或目录”错误消息。因此,我使用了从Accessing properties file in a JSF application programmatically 获取的以下代码:
String path = "/jrxml/employeesList.jrxml";
ClassLoader loader = Thread.currentThread().getContextClassLoader();
InputStream input = loader.getResourceAsStream(path);
JasperDesign jasperDesign = JRXmlLoader.load(input);
JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
现在我不再收到“没有这样的文件或目录”错误消息,而是收到“net.sf.jasperreports.engine.JRException: java.net.MalformedURLException”异常,根据堆栈跟踪它是由第四个命令(JRXmlLoader.load(input))引起。有人可以告诉我我做错了什么吗?
谢谢
【问题讨论】:
标签: java servlets jasper-reports