我用ireport 0.3生成主表product_sale.jasper,从表product.jasper,主表product_sale中的从表路径是"product.jasper"。在ireport中是可以正常浏览的。
但把两个文件拷到WebApp下的reports目录中;
用jsp调用:
.......
File reportFile = new File(application.getRealPath("/reports/product_sale.jasper"));
JasperReport jasperReport = (JasperReport)JRLoader.loadObject(reportFile.getPath());
Map parameters = new HashMap();
parameters.put("ReportTitle", "Address Report");
parameters.put("BaseDir", reportFile.getParentFile());String sql="select city from address group by city order by city ";
DBConnect dbConnect=new DBConnect(sql);
ResultSet res=dbConnect.executeQuery();
JRResultSetDataSource js=new JRResultSetDataSource(res);
JasperPrint jasperPrint =JasperFillManager.fillReport(jasperReport,parameters,js);
......然而抛出异常:
dori.jasper.engine.JRException: Could not load object from location : product.jasper
at dori.jasper.engine.util.JRLoader.loadObjectFromLocation(JRLoader.java:301)
....但假如调用没有从表的*.jasper却可以正常显示。