我正在使用Icefaces进行Web应用程序开发。我希望从资源文件夹中读取一个文件,并在sessionbean中使用它。
其实我希望设置Jasper Reports。我已经在类路径中设置了库。我得到的问题是从/ WEB-INF / resources /文件夹中获取文件。每次我从SessionBean运行代码时,都会得到异常:
net.sf.jasperreports.engine.JRException: java.io.FileNotFoundException: /resources/reports/myreport.jrxml (No such file or directory)
我使用的代码是:
public void generateReport() {
try {
JasperCompileManager.compileReportToFile(
"/resources/reports/myreport.jrxml",
"/resources/reports/myreport.jasper");
} catch (Exception e) {
e.printStackTrace();
}
}
上面的代码在SessionBean中。 Plz帮助
答案 0 :(得分:1)
JasperCompileManager.compileReportToFile
的网址。
此方法需要将文件名作为参数,而不是URL。
其他互联网论坛建议的解决方案是:
JasperCompileManager.compileReportToFile(
getServletContext().getRealPath(xmlFile),
getServletContext().getRealPath(compiledFile));