0

我正在尝试使用以下教程将 jasper 与 struts2 集成。

但是 jasper 编译器无法访问该文件,我的代码如下所示

ServletContext context=ServletActionContext.getServletContext();

URL is = context.getResource("/jasper/our_jasper_template.jrxml");  
String path=is.getPath();
String jasper = is.getPath().replace("our_jasper_template.jrxml", "our_compiled_template.jasper");
System.out.println(path); //here displays the path
JasperCompileManager.compileReportToFile(path,jasper); // here throws FileNotFoundException

如果我更改path="C:\our_jasper_template.jrxml"(保留文件),编译器会读取文件,但无法将文件保存到our_compiled_template.jasper

(显示Error saving file: jaspers\jasper\our_compiled_template.jrxml

我经历了很多建议,但我没有纠正它。.

4

1 回答 1

0

getRealPath()是答案。

所以我将上面的代码更改如下并得到输出

ServletContext context=ServletActionContext.getServletContext();

String path= context.getRealPath("/jasper/our_jasper_template.jrxml"); 
于 2014-01-05T04:37:47.767 回答