iReport не загружает мой файл .dat - значения полей не отображаются

Я пытаюсь получить значения из переменных в моем классе bean-компонента в iReport (используя JavaBean в качестве источника данных). У меня есть класс bean-компонента, который в своем конструкторе вызывает метод loadReceipt (), который загружает данные из файла .dat, который сохраняет пользователь. Затем у меня есть другие методы в классе bean-компонента, которые используют данные из loadReceipt () для вычисления чисел и сохраняют их в переменных типа double.

Каждая из переменных имеет getMethod, который я вызываю в фабричном классе и добавляю в коллекцию JavaBean, которую использует iReport.

Однако моя проблема в том, что когда я перетаскиваю поля в свой шаблон PDF и просматриваю его в Netbeans, я получаю ошибки «Файл не найден» для файла .dat, который нужен классу компонента, и поэтому поля всегда равны 0,0.

Вот отрывок из моего урока по компонентам:

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;
    }

Любой мой класс Factory:

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. Действительно был бы признателен за помощь в этом!


person eoinDub    schedule 24.05.2014    source источник


Ответы (1)


Я понял. Файл не будет загружен при предварительном просмотре, так как программа не запущена. Как только я добавил PDF через Jasper в программу и запустил его, цифры появились как должны :)

person eoinDub    schedule 25.05.2014