在本地计算机(localhost)上,在Web应用程序的java类文件中,我将文件路径设置为。
JRBeanCollectionDataSource bean = new JRBeanCollectionDataSource(al);
try {
print = JasperFillManager.fillReport("D://vivek's//powerSpace//report//bus.jasper",
new HashMap(), bean);
} catch (JRException e) {
e.printStackTrace();
}
return al;
}
但是当这个Web应用程序托管在服务器上时,如何给出文件的绝对路径。
答案 0 :(得分:0)
使用此资源。
EG:
将bus.jasper放入webapp的resources文件夹中,然后使用:
InputStream resource = getClass().getClassLoader().getResourceAsStream("bus.jasper");
从那里使用InputStream 如果您使用的类的API非常蹩脚,需要使用文件路径
ConstantDataManager.class.getClassLoader().getResource("bus.jasper").getPath();
第二种解决方案在Weblogic上效果不佳。