spring mvc在WEB-INF文件夹中找不到jasper文件

时间:2015-01-07 10:55:21

标签: java spring spring-mvc jasper-reports

我创建了一个spring MVC应用程序。因为我曾经使用jasper创建pdf报告。 我把Jasper文件sampleReport.jrxml和sampleReport.jasper放在WEB-INF / report文件夹中。

我尝试使用

访问文件
FileSystemResource resource = new FileSystemResource("/WEB-INF/report/sampleReport.jrxml");
            //InputStream xmlfil = new FileInputStream(new File(request.getContextPath()+File.separator
            //      + fileName + ".jrxml"));
            InputStream xmlfil = resource.getInputStream();
            JasperDesign jasperDesign = JRXmlLoader.load(xmlfil);

但执行时会发现错误“/WEB-INF/report/sampleReport.jrxml”文件未找到。

我也试过这个。

InputStream xmlfil = new FileInputStream(new File(request.getContextPath()+File.separator
            + fileName + ".jrxml"));

但没有希望。

如何在控制器中获取文件?

1 个答案:

答案 0 :(得分:0)

在webapp下设置文件。
例如。的WebContent /报告/ sampleReport.jrxml

尝试如下:

ServletContext context = (ServletContext) externalContext.getContext();
    InputStream xmlfil = new FileInputStream(new File(context.getRealPath("/report/sampleReport.jrxml")));