2013-06-27 5 views
1

Я использую Java, JBoss 5.1, EJB и JasperReports библиотека для генерации отчетов.Абсолютный путь к EAR File

У нас есть jrxml с выражением Вложенный отчет и вложенный отчет $P{SUBREPORT_DIR} + "ACC0401-RebatePayableAgingClosedLoans - SR1.jasper"

Где $P{SUBREPORT_DIR} в настоящее время передается от Java и имя файла т.е. "ACC0401-RebatePayableAgingClosedLoans - SR1.jasper" известно только для сообщения.

Java не знает об имени файла "ACC0401-RebatePayableAgingClosedLoans - SR1.jasper", так что я не могу использовать getResourceAsStream().

Теперь я хочу перейти с Java введите следующий абсолютный путь, который в основном находится в файле EAR.

/usr/local/jboss5.1.0.GA/server/default/deploy/OceanviewEAR.ear/OceanviewEJB.jar/com/oceanview/jasper/resource/config 

Мой вопрос: В Java, как я могу получить абсолютный путь EAR файла, так что я могу передать, что абсолютный путь к JR отчета, а затем отчет будет иметь возможность найти фактическое .jasper файл.

ответ

0

Это сработало для меня: используйте URL вместо абсолютного пути.

InputStream url = getClass().getClassLoader().getResourceAsStream("/Report.jasper"); 
JasperPrint jasperPrint = JasperFillManager.fillReport(url, params, ds); 
Смежные вопросы