从Java调用JasperReports

时间:2018-10-24 08:12:37

标签: java

我正在尝试从Netbeans 8.2下打印使用Jasper Reports创建的报告,第一个报告可以正常工作几天,然后停止工作,并且出现错误消息

“线程“ AWT-EventQueue-0”中的异常” java.lang.NoClassDefFoundError:org / apache / commons / digester / Digester”。

所有Jasperreports Jar文件确实存在于我的项目中的“库”目录下。 这是我用来从应用程序调用Jasper报告的代码。

 try {
        DBModule.ConnectDataBase.ConnectDataBase_Method();
        conn = DBModule.ConnectDataBase.ConnectDataBase_Method();

        //Get a stream to read the file
        InputStream is = this.getClass().getClassLoader().getResourceAsStream(reportName);

        JasperPrint jp = JasperFillManager.fillReport(is, null, conn);

        JRViewer jv = new JRViewer(jp);

        JFrame jf = new JFrame();
        jf.getContentPane().add(jv);
        jf.validate();
        jf.setVisible(true);
        jf.setSize(new Dimension(800,600));
        jf.setLocation(300,100);
        jf.setDefaultCloseOperation(2);

    } catch (JRException ex) {
        CustomControls.CustomTools.CustomMsgBox(ex.getMessage());
    }

任何建议...

1 个答案:

答案 0 :(得分:0)

您不仅需要“所有Jasperreports Jar文件”,还需要一些3rd party库。请查看community.jaspersoft.com/wiki/jasperreports-library-requirements有关库的要求。除非您不使用Maven或类似工具,否则我想您需要将它们复制到您的类路径中。