【问题标题】:can't seem to view my ireport file in java似乎无法在 java 中查看我的 ireport 文件
【发布时间】:2016-03-23 15:33:01
【问题描述】:

我的问题是我似乎无法查看我创建和保存的 ireport 文件。 这是java编码:

private void btnreportActionPerformed(java.awt.event.ActionEvent evt) {                                          
    Connection c; 

    try {
        c = DBConnect.DB();
        String report = "C:\\Users\\p.bwalya\\Documents\\Reports\\NPS Report.jrprint ";
        JasperReport JR = JasperCompileManager.compileReport(report);
        JasperPrint JP = JasperFillManager.fillReport(JR,null,c);
        JasperViewer.viewReport(JP);
    } catch(SQLException | JRException e) {
        e.printStackTrace();
    }
}                                         

这是错误信息:

net.sf.jasperreports.engine.JRException:
org.xml.sax.SAXParseException;行号:1;列号:1;无效的 1 字节 UTF-8 序列的字节 1。
在 net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:302)
在 net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:285)
在 net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:274)
在 net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:219)
在 net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:194)
在 net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:185)
在 net.sf.jasperreports.engine.JasperCompileManager.compile(JasperCompileManager.java:288)
在 net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:575)
在 ireport.main(ireport.java:35)

有人知道我的代码有什么问题吗?

【问题讨论】:

  • 请添加您的 ireport 文件的顶部行。
  • 最好的办法是预编译jrxml并导入源.jasper文件,避免每次都编译!

标签: java jasper-reports


【解决方案1】:

您编译的是 jrxml 文件,而不是 .jasper 文件(它已经编译)或 jrprint(JasperPrint 对象,它已经被填充)

String report = "C:\\Users\\p.bwalya\\Documents\\Reports\\NPS Report.jrprint ";
JasperReport JR = JasperCompileManager.compileReport(report);

你需要通过.jrxml

es.

String report = "C:\\Users\\p.bwalya\\Documents\\Reports\\NPS_Report.jrxml";
JasperReport JR = JasperCompileManager.compileReport(report);

如果您想了解更多关于不同 jasper 报告格式的信息..

what-is-the-difference-between-jasperreport-formats

注意:

  1. 如果您已经拥有.jasper 文件,则无需编译jrxml,只需将.jasper 文件传递​​给fillReport 而不是JasperReport,请参阅@Lefteris Bab 注释。
  2. fillReport 中考虑传递一个空的HashMap 而不是null

【讨论】:

    猜你喜欢
    • 2013-01-12
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 2012-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多