【问题标题】:Simple Jasper report without a database没有数据库的简单 Jasper 报告
【发布时间】:2023-03-22 12:36:01
【问题描述】:

我是 jasperforge 的新手 || jasperreports,我希望仅使用 ireport 空模板和无数据库连接生成一个简单的 pdf 报告。

我尝试了一些简单的程序来只导出没有数据的 PDF 并尝试了以下代码:

import java.io.File;
import java.util.HashMap;
import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporter;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.export.JRPdfExporter;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperPrintManager;
import net.sf.jasperreports.engine.util.JRLoader;


public class JasperTest {

    public void generateReport() throws ClassNotFoundException, InstantiationException, IllegalAccessException, JRException {
        System.out.println("Filling report...");
        JasperPrint print = JasperFillManager.fillReport(jasper_filename, hm);
        JRExporter exporter = new JRPdfExporter();
        exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, pdf_filename);
        exporter.setParameter(JRExporterParameter.JASPER_PRINT, print);
        exporter.exportReport();
        System.out.println("Created file: " + pdf_filename);
        System.out.println("Done!");
    }
    String jasper_filename = "/blue_template.jasper";
    String pdf_filename = "/pdf_out.pdf";
    HashMap hm = new HashMap();

    public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException, JRException {
        System.out.println("Hello World!");
        new JasperTest().generateReport();
    }
}

,...但它没有用。我需要将以下库添加到项目中:

  • 公共日志记录
  • commons-digester
  • commons-collections

当我尝试运行可执行文件时,出现以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException

我认为这与 .jasper 文件无关,它在 ireports 中编译时没有错误,但我不知道发生了什么。

【问题讨论】:

  • 您是否尝试添加 groovy 库/类?这不是运行时错误,而是在加载使用 groovy 类的类定义时出错。

标签: java pdf jasper-reports


【解决方案1】:

尝试添加 groovy 库。它将解决问题。 http://groovy.codehaus.org/Download

【讨论】:

    【解决方案2】:

    Jasper 不依赖于 groovy,除非报告语言是“groovy”。出于某种原因在 iReport 中编译的报告默认具有 groovy。要更改它,请右键单击报告根目录,属性,将语言设置为 Java 并重新编译。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多