Erro de Compilação IREPORT 3.7.4

6 respostas
francielly.marchi

Oii,

Estou tentando migrar relatórios que foram criados no ireport 0.5.2 para a versão 3.7.4. Acontece que quando eu tento compilar o mesmo relatório só que renomeado aparece o seguinte erro:

Error filling print... Error loading object from file : C:\relatorio_novo\subRelRodapeRetrato.jasper 
net.sf.jasperreports.engine.JRException: Error loading object from file : C:\relatorio_novo\subRelRodapeRetrato.jasper      at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:101)      at net.sf.jasperreports.engine.util.JRLoader.loadObjectFromLocation(JRLoader.java:253)      at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateReport(JRFillSubreport.java:301)      at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport(JRFillSubreport.java:327)      at net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate(JRFillSubreport.java:263)      at net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate(JRFillElementContainer.java:258)      at net.sf.jasperreports.engine.fill.JRFillBand.evaluate(JRFillBand.java:499)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillFixedBand(JRVerticalFiller.java:2077)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillPageFooter(JRVerticalFiller.java:1007)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillPageBreak(JRVerticalFiller.java:1907)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBreak(JRVerticalFiller.java:1950)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillGroupFooter(JRVerticalFiller.java:919)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillGroupFooters(JRVerticalFiller.java:788)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportContent(JRVerticalFiller.java:280)      at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:131)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:942)      at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:841)      at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:58)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:417)      at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:247)      at com.jaspersoft.ireport.designer.compiler.IReportCompiler.run(IReportCompiler.java:877)      at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:572)      at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:997)  Caused by: java.io.InvalidClassException: net.sf.jasperreports.engine.base.JRBaseReport; local class incompatible: stream classdesc serialVersionUID = 10100, local class serialVersionUID = 10200      at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)      at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)      at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)      at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)      at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)      at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)      at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)      at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)      at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:97)      ... 22 more

Alguém já passou por esse problema??

6 Respostas

D

Boa tarde,

Pelo que entendi é um sub-relatorio certo?
Se você renomeou o sub-relatório no diretorio, é necessario renomea-lo também no iReport.

Dentro das propriedades do seu sub-relatorio no iReport, confira se a propriedade chamada Subreport Expression possui nome diferente de “subRelRodapeRetrato.jasper”, caso estiver diferente basta colocar este nome.

francielly.marchi

Sim, é um sub, mas já está renomeado.
E tpw, o ireport 3.7.4 não gera um arquivo .java?
pq no 0.5 ele gera no mesmo diretório, será que tem alguma relação com o erro?

Att.

D

Quando você compila ele gera um arquivo .jasper…
Você verificou se esta compilando seu sub-relatorio no codigo também?

francielly.marchi

Então na verdade, eu preciso de um relatório gerado na versao 0.5 e na 3.7. O que eu fiz foi copiar o mesmo relatorio e rodar cada um em uma versão. Então os arquivos .jasper e .java já existem.

Mas eu fiz um teste e quando eu criei um relatório do zero ele gerou apenas o .jasper (3.7.4) enquanto no 0.5 ele gera o .java e o .jasper.

Agora, ele não está dando erro mas, por mais que eu indique o caminho fisico, ele não traz o subrelatório.

:shock:

D

Você passa uma conexão para o iReport ou um DataSource?

Ja verificou as propriedades correspondentes a isso no iReport?

francielly.marchi

Já achei o erro. é que no 3.7 vc não precisa passar o caminho completo do relatório e sim indicar apenas o nome do sub.

Vlw

:slight_smile:

att,
Francielly

Criado 12 de janeiro de 2011
Ultima resposta 12 de jan. de 2011
Respostas 6
Participantes 2