【问题标题】:accessing a file inside war folder from a code从代码访问war文件夹中的文件
【发布时间】:2015-02-21 13:49:49
【问题描述】:

我发现很难从我的 java web 项目中的代码访问我的warfolder 中的文件。

这是我的文件结构

我使用的 java 代码在包 com.abl.tf.dao 中。

我正在尝试访问位于war->reports 文件夹中的文件testreport.jrxml

这是我尝试过的,这给了我一个例外file not found

net.sf.jasperreports.engine.design.JasperDesign design = JRXmlLoader.load(
                    new LegacyJasperInputStream(new FileInputStream("/TFProject/reports/testreport.jrxml"))
                    );

您能帮我从代码中访问该文件吗?

提前致谢!

【问题讨论】:

    标签: java configuration war


    【解决方案1】:

    您需要将文件作为资源访问。你这样做:

    net.sf.jasperreports.engine.design.JasperDesign design = JRXmlLoader.load(new LegacyJasperInputStream(getServletContext().getResourceAsStream("/reports/testreport.jrxml"));
    

    【讨论】:

    • 它在哪个库 jar 中。我正在进行一个 Spring 项目。
    • 我没有在 jsp 页面中编码。这是在 java 代码中
    • 如果您使用的是 Spring,那么您可以像这样获取 servlet 上下文:@Autowired ServletContext servletContext;
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 2016-03-25
    • 1970-01-01
    • 2013-06-14
    相关资源
    最近更新 更多