Дан код некоторого веб-приложения, генерирующего отчёт:
URL url = getClass().getClassLoader().getResource("/WEB-INF/report/MyReport.jrxml");
jasperReport = JasperCompileManager.compileReport(url.getPath());
...
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, jasperParameter, beanDataSource);
Вопрос: Допустимо ли наличие в MyReport.jrxml, который будет компилироваться и заполнятся данными с помощью Java-приложения наличие собственного SQL-запроса?
Здесь имеется ввиду наличие строк типа:
<queryString>
<![CDATA[SELECT * FROM
...
</queryString>
в jrxml-файле (как если бы он ранее использовался вне данного приложения).
Варианты ответов:
1) Да, данный отчёт будет наработан с данными, полученными приложением.
2) Да, но данный отчёт будет заполнятся данными, полученными на основе собственного SQL-запроса.
3) Нет, будет иметь место ошибка времени выполнения в строке
jasperReport = JasperCompileManager.compileReport(url.getPath());
4) Нет, будет иметь место ошибка времени выполнения в строке
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, jasperParameter, beanDataSource);
Дан код некоторого веб-приложения, генерирующего отчёт:
URL url = getClass().getClassLoader().getResource("/WEB-INF/report/MyReport.jrxml");
jasperReport = JasperCompileManager.compileReport(url.getPath());
...
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, jasperParameter, beanDataSource);
Вопрос: Допустимо ли наличие в MyReport.jrxml, который будет компилироваться и заполнятся данными с помощью Java-приложения наличие собственного SQL-запроса?
Здесь имеется ввиду наличие строк типа:
<queryString>
<![CDATA[SELECT * FROM
...
</queryString>
в jrxml-файле (как если бы он ранее использовался вне данного приложения).
Варианты ответов:
1) Да, данный отчёт будет наработан с данными, полученными приложением.
2) Да, но данный отчёт будет заполнятся данными, полученными на основе собственного SQL-запроса.
3) Нет, будет иметь место ошибка времени выполнения в строке
jasperReport = JasperCompileManager.compileReport(url.getPath());
4) Нет, будет иметь место ошибка времени выполнения в строке
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, jasperParameter, beanDataSource);