Как прочитать файл из папки WEB-INF / resources? - PullRequest
0 голосов
/ 03 октября 2011

Я использую Icefaces для разработки веб-приложений.Я хочу прочитать файл из папки ресурсов и использовать его в сеансе.

На самом деле я хочу настроить Jasper Reports.Я уже настроил библиотеки в classpath.Проблема, которую я получаю, заключается в получении файла из папки / 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.Пожалуйста, помогите

1 Ответ

1 голос
/ 04 октября 2011

Вы проходите родственник URL к методу JasperCompileManager.compileReportToFile. Этот метод ожидает имена файлов в качестве параметров, а не URL.

Решение, предлагаемое на других интернет-форумах:

JasperCompileManager.compileReportToFile(
  getServletContext().getRealPath(xmlFile), 
  getServletContext().getRealPath(compiledFile));
...