Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > выгрузка отчета в Jasper Reports


Автор: Папараццы 15.3.2011, 09:46
Доброе время суток дорогие форумчане, 
 Возникла проблема загрузки данных в отчет посредством Jasper Reports (в поем случае это плагин jasperassistatn для  Eclipse и iReports в NetBeans). Проблема в том что простые переменные типа String  передаются без проблем. По умолчанию в репорте Class Value java.lang.String, а передать тип List не получается, при попытке прописать ClassValue java.util.List компилятор репорта вываливает ошибку java.lang.ClassNotFoundException. И вообще можно ли передавать таким способом переменные?   Если кто то делал похожее, то прошу помочь. Заранее благодарю. 

Автор: Папараццы 16.3.2011, 17:04
данный вопрос решил использованием JRDataSource
например 
Код

public class ExampleDataSource implements JRDataSource {
    private int m_nIdx;
    private ArrayList<SampleObject> v = new ArrayList<SampleObject>();
    
    public ExampleDataSource() {
        v.add(new SampleObject("user1","passwd1"));
        v.add(new SampleObject("user2","passwd2"));
        v.add(new SampleObject("user3","passwd3"));
        v.add(new SampleObject("user4","passwd4"));
        v.add(new SampleObject("user5","passwd5"));
        v.add(new SampleObject("user6","passwd6"));
        v.add(new SampleObject("user7","passwd7"));
        v.add(new SampleObject("user8","passwd8"));
        v.add(new SampleObject("user9","passwd9"));
        v.add(new SampleObject("user10","passwd10"));
        m_nIdx = -1;
    }
    
    //public ExampleDataSource(Vector<AccountCashFlow> v)
    //{
    //            this.v=v;
    //}
    
    public Object getFieldValue(JRField field) throws JRException {
        System.out.println("get field(ExampleDataSource): " + field.getName());
        Object o = null;

        String sName = field.getName();

        SampleObject obj = v.get(m_nIdx);
        System.out.println("obj " + obj);

        if (obj == null)
        return null;

        if (sName.equals("userName"))
        o = obj.getUserName();
        else if (sName.equals("passWord"))
        o = obj.getPassWord();
        System.out.println("returns " + o);
        return o;
        
    }

    public boolean next() throws JRException {
        m_nIdx++;
        return (m_nIdx < 10);
    }
}



Есть некоторые проблемки, есть кто нить кто работал с JasperReport? 

Автор: jk1 16.3.2011, 18:00
Цитата

Есть некоторые проблемки, есть кто нить кто работал с JasperReport? 


У меня был опыт. Какие именно проблемки?

Автор: Папараццы 18.3.2011, 08:22
Спасибо за ответ проблема была в самом jasperassistant-e, а еще точнее что я DETAIL TAB растянул, и заголовок в HEADER не поставил, после чего у меня  создавал несколько страниц. В данном случае все сделал. Если у кого будут вопросы, думаю что смогу помочь. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)