[Resolvido] Subrelatórios e JavaBeans datasource - iReport

1 resposta
B

Boa tarde!

Estou seguindo estes dois tutoriais:
http://www.furutani.com.br/2009/02/tutorial-de-jasperreports-usando-arraylist-de-vo/
http://www.brucephillips.name/blog/index.cfm/2008/7/6/Using-JasperReports-With-An-ArrayList-of-Objects-As-The-Data-Source-Part-1-Creating-the-Report

Mesmo assim estou tendo problemas para gerar o subrelatório.

Tenho as classes:
PoloBean - contem a ArrayList do tipo ServicoBean
ServicoBean
TestPoloBean - Executável que contém o método getBeanCollection, que retorna uma arraylist de objetos da classe PoloBean.

Consegui fazer o Polo preencher o relatório, porém no sub, eu configuro tudo de acordo com os tutoriais (ou quase tudo, pois uso o jasper 4.5.1 e os tutoriais utilizaram 3.0.0 pra baixo), e quando vou executar, recebo a seguinte exception:

Error filling print... java.util.ArrayList cannot be cast to net.sf.jasperreports.engine.JRDataSource java.lang.ClassCastException: java.util.ArrayList cannot be cast to net.sf.jasperreports.engine.JRDataSource

Minhas configurações do subrelatório estão assim:

Outro detalhe: se no campo DataSourceExpression eu colocar isso:

new JRBeanCollectionDatasource($F{servicos})

ele lança essa exception:

Ja estou quase ficando louco aki pra fazer isso funcionar, e não consigo. Alguém ja teve problema parecido ou possa identifcar algum erro no meu projeto?

1 Resposta

B

Consegui resolver, em meio a mil tentativas lembrei de um post acho que do ViniGodoy, dizendo que listas deveriam ser declaradas assim:

ao invés de:

Mesmo com os tutoriais usando a segunda declaração, só funcionou como List.
Segue um link que talvez ajude alguém em futuras consultas:

Abraços.

Criado 5 de julho de 2012
Ultima resposta 5 de jul. de 2012
Respostas 1
Participantes 1