E ai galera do Guj.
To com um problema aqui ja faz 2 dias e não consigo achar a solução.
Tenho um relatório no jasperReports que esta causando a Excepiton IndexOutOfBoundsExceptio.
Eu tenho um relatório com um sub-relatório na banda detail. este sub-relatório imprime varias tabelas separadas por área.
Cada tabela que imprime vem de uma query executada de acordo com os parâmetros que vem do relatório pai.
Eu utilizo Datasource para passar os valores para o relatorio.
A classe que gera este erro é uma classe que implementa JRDataSource no método sobrescrito next().
O meu problema é o seguinte:
Quando uma tabela não conseguir imprimer toda em uma pagina, esta tabela não pode quebrar e deve imprimir inteira na outra pagina(Esta tabela pode ter no máximo dez linhas, então isto pode acontecer varias vezes no relatório). Para que isto aconteça eu seto na banda detail do relatório pai split allowed como false. Mas isso me gera dois problemas:
1 - Se a linha da tabela onde deveria acontecer a quebra é a ultima da banda detail do sub-relatório, IndexOutOfBoundsExceptio é gerada. Consegui resolvi esse problema com a implementação no método sobrescrito next();
2 - Quando a linha em que acontece a quebra esta não eh a ultima ( com ou sem o problema do Exception citada acima), simplesmente não imprime a tabela em que deveria ter acontecido a quebra. Acontece quando a 1 situação quando resolvida também.
Se eu marcar split allowed como true todas as tabelas imprimem normalmente mas com quebra.
Não sei se alguém já passou, ou viu algo parecido, mas procurei bastante pela web e não encontrei nada.
Se alguém puder me dar uma luz do que fazer, eu agradeço. Porque pra mim o fim do tunel parece estar bem longe :shock: