iReport无法加载我的.dat文件 - 字段值不会显示

时间:2014-05-24 14:09:16

标签: java jasper-reports ireport

我正在尝试从我的bean类中的变量中获取值到 iReport (使用JavaBean作为datasoure)。我有一个bean类,它在构造函数中调用一个loadReceipt()方法 - 它从用户保存的.dat文件中加载数据。然后我在bean类中有其他方法,它们使用来自loadReceipt()的数据来计算数字并将它们保存为双变量。

每个变量都有一个getMethod,我在工厂类中调用它并添加到 iReport 使用的JavaBean集合中。

但是我的问题是,当我将字段拖到我的PDF模板并在Netbeans中预览时,我得到了bean类所需的.dat文件的“找不到文件”错误,因此字段始终为0.0。

以下是我的bean类的摘录:

public class Calculations implements Serializable {
    //declare data members
    private double amt[] = new double [100];
    private String cat[] = new String [100];
    public double bankIntReceived;
    private String category;
    private ArrayList <Receipts> rec = new ArrayList<Receipts>();

    public Calculations(){
        rec = new ArrayList<Receipts>();
        loadReceipts();
        category = "";
        bankIntReceived = calcReceipts("Bank Interest Received");
    }

    public double getBankIntReceived() {
        return bankIntReceived;
    }

    public void setBankIntReceived(double bankIntReceived) {
        this.bankIntReceived = bankIntReceived;
    }

我的工厂类:

public class BeanFactory implements Serializable {
    //collection for javabeans
    public static Collection getCalcs() {
        Vector calculations = new Vector();
        try {
            Calculations calc = new Calculations();
            calc.getBankIntReceived();
            calculations.add(calc);
        } catch(Exception ex) {
            System.out.println(ex);
        }
        return calculations;
    }
}

bankIntReceived将始终显示0.0。如果我手动将其设置为不同的图形,它将显示,因此加载.dat文件时出现问题。

有谁知道为什么会这样,以及我如何才能加载.dat文件?

任何帮助真的很感激!在上周,我一直在试图解决这个问题。请原谅代码中的任何混乱我是java的初学者。真的很感激一些帮助!

1 个答案:

答案 0 :(得分:0)

我明白了。程序未运行时,文件将不会在预览下加载。一旦我通过Jasper将PDF添加到程序中并运行它,数字就会出现:)