我正在通过预先设计的 Jrxml 文件从我的 Java Web 应用程序创建 Jasper 报告。该文件位于名为 jrxml 的目录中的我的 web 文件夹 (Netbeans) 中,因此我正在尝试使用此方法来获取它。
public void generateChurchReport(IncomeExpenseBean ieb) {
church = ieb.getChurch();
user = ieb.getUser();
String currdate = dt.getCurrentDate();
Connection conn = db.getDbConnection();
Map parameters = new HashMap();
try{
parameters.put("ChurchName", church);
JasperReport jasperReport = JasperCompileManager.compileReport("/jrxml/ChurchIncome_expenseReport.jrxml");
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, parameters, conn);
File f = new File(user + church+ currdate + ".pdf");
JasperExportManager.exportReportToPdfFile(jasperPrint, f.getAbsolutePath());
Desktop.getDesktop().open(new File(f.getAbsolutePath()));
}catch(Exception asd){
System.out.println(asd.getMessage());
}
}
我收到文件未找到异常,因为应用程序期望该文件位于 ;
C:\Program Files\glassfish-3.1.2.2\glassfish\domains\TestDom\jrxml\
如何在我的 web 文件夹中读取此文件以及如何在同一文件夹中创建报告?
编辑如果我不提供任何路径,如果 jrxml 文件位于该位置,我的报告将在 C:\Program Files\glassfish-3.1.2.2\glassfish\domains\TestDom\ 生成。