我试图制作这个程序,但我无法从中获取报告...即使它在java netbeans中工作,当我尝试使用可执行的JAR文件运行它时,我收到此错误! 我的编码部分是
JRTableModelDataSource datasource = new JRTableModelDataSource(dt.getModel());
String reportSource = "file/door_reports.JRXML";
Map<String, Object> params = new HashMap<>();
params.put("c1", subtot.getText());
JasperReport jasperReport = JasperCompileManager.compileReport(reportSource);
JasperPrint jasperPrint1 = JasperFillManager.fillReport(jasperReport, params, datasource);
JasperViewer.viewReport(jasperPrint1, false);
错误是:error compiling java source file D:/test/dist/Blank_A4_1426091490655_11644
以上文件甚至不存在!谁知道会是什么原因?
答案 0 :(得分:1)
使用此方法,它应该对您有用:
public static void GenerateReport(String filename, HashMap parameter) {
try {
JasperDesign jspDesign = JRXmlLoader.load(filename);
JasperReport jspReport = JasperCompileManager.compileReport(jspDesign);
JasperPrint jspPrint = JasperFillManager.fillReport(jspReport, parameter, yourconnection);
JasperViewer.viewReport(jspPrint, false);
} catch (Exception e) {
JOptionPane.showConfirmDialog(null, e);
}
}
并确保文件的路径,祝你好运。
答案 1 :(得分:0)
在Jasper中编辑jxml之后,你重命名了吗? 该报告设置了您在Jasper中创建它时选择的报告文件名作为名称,因此,如果您简单地重命名文件而不是直接在jxml中更改名称...我认为可能存在您的问题。