Re: [javasf] IReports - Error evaluating expression : Source text : new java.lang.Integer(1)

3,992 views
Skip to first unread message

ayslan

unread,
May 9, 2013, 10:14:24 AM5/9/13
to jav...@googlegroups.com
No ireport tem um lugar que você muda o tipo de compilação, nas últimas versão o padrão é groovy e você tem que adicioanr as dependências, mas você pode mudar isso para de grooovy para java.


Em 8 de maio de 2013 19:56, Diogo Henrique <diog...@gmail.com> escreveu:
Olá pessoal, não estou mais vendo nada de erro aqui. Já to ficando cego de tanto olhar.

net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression : 
Source text : new java.lang.Integer(1)
at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:259)
at net.sf.jasperreports.engine.fill.JRCalculator.evaluateEstimated(JRCalculator.java:580)
at net.sf.jasperreports.engine.fill.JRCalculator.estimateVariables(JRCalculator.java:179)
....
Caused by: java.lang.NoClassDefFoundError: org/codehaus/groovy/runtime/BytecodeInterface8
at relatorios_paradas_1_1368052097588_41551.evaluateEstimated(calculator_relatorios_paradas_1_1368052097588_41551:253)
at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:246)
... 79 more
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.runtime.BytecodeInterface8
at java.lang.ClassLoader.findClass(ClassLoader.java:522)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 81 more

O erro é justamente quando passo o parâmetro para o relatório...
JasperPrint impressoraJasper = JasperFillManager.fillReport(relatorioJasper,parametrosRelatorio, conexao);

Eu já fiz dessas maneiras e deu o mesmo erro...
HashMap parametrosRelatorio = new HashMap();
//parametrosRelatorio.put("flagStatus", Integer.valueOf(99));
parametrosRelatorio.put("flagStatus", 99);

No relatório o parâmetro e do tipo java.lang.Integer... alguém já passou por isso ?





--
Você está recebendo esta mensagem porque se inscreveu no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para javasf+un...@googlegroups.com.
Visite este grupo em http://groups.google.com/group/javasf?hl=pt-BR.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Att,

Ayslan M. de Sousa

Diogo Henrique

unread,
May 9, 2013, 1:43:27 PM5/9/13
to jav...@googlegroups.com
Eu adicionei a lib mais atual do groovy e continua a mesma coisa. Alguém conhece algum tutorial bom ? eu to seguindo o livro do Decio e do Alexandre(Java Para Web) mas não to conseguindo ter sucesso.

Diogo Henrique
(83)87344178
Rede Sociais: 




ayslan

unread,
May 9, 2013, 2:10:35 PM5/9/13
to jav...@googlegroups.com
Como eu falei, se você tem dificuldade em resolver isso do groovy, basta mudar o tipo de compilação de groovy para java.

Diogo Henrique

unread,
May 10, 2013, 3:42:24 PM5/10/13
to jav...@googlegroups.com
Olá ayslan, eu consegui =D
Era minha conexão que estava furada. Valeu pelos toques. Eu coloquei pra Java a Compilação. Você sabe a diferença ?


ayslan

unread,
May 13, 2013, 12:19:53 PM5/13/13
to jav...@googlegroups.com
A diferença que ao usar a compilação em groovy você pode usar a sintaxe dele nas expressões, ao criar um relatório o padrão que o ireport coloca é groovy.

Diogo Henrique

unread,
May 14, 2013, 9:47:27 AM5/14/13
to jav...@googlegroups.com
Obrigado Ayslan. =D

Felipe Rafael

unread,
Aug 12, 2015, 3:00:12 PM8/12/15
to javasf: JavaServer Faces Group
Diego, como vc resolveu esse problema? Já alterei o padrão para Java e mesmo assim está com erro.


net.sf.jasperreports.engine.fill.JRExpressionEvalException: Error evaluating expression for source text: $F{vlOriginal}
    at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:328)
    at net.sf.jasperreports.engine.fill.JRCalculator.evaluateEstimated(JRCalculator.java:601)
    at net.sf.jasperreports.engine.fill.JRCalculator.estimateVariables(JRCalculator.java:200)
    at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1276)
    at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1250)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1003)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:120)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:551)
    at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:411)
    at net.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:732)
    at net.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:58)
    at net.sf.jasperreports.engine.fill.AbstractThreadSubreportRunner.run(AbstractThreadSubreportRunner.java:216)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: java.lang.Double cannot be cast to java.lang.String
    at subextrato_1439405287507_877599.evaluateEstimated(subextrato_1439405287507_877599:454)
    at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:315)
    ... 14 more
15:51:24,963 ERROR [[portalBeneficiario]] Servlet.service() for servlet portalBeneficiario threw exception
java.lang.ClassCastException: java.lang.Double cannot be cast to java.lang.String
    at subextrato_1439405287507_877599.evaluateEstimated(subextrato_1439405287507_877599:454)
    at net.sf.jasperreports.engine.fill.JREvaluator.evaluateEstimated(JREvaluator.java:315)
    at net.sf.jasperreports.engine.fill.JRCalculator.evaluateEstimated(JRCalculator.java:601)
    at net.sf.jasperreports.engine.fill.JRCalculator.estimateVariables(JRCalculator.java:200)
    at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1276)
    at net.sf.jasperreports.engine.fill.JRFillDataset.next(JRFillDataset.java:1250)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.next(JRBaseFiller.java:1003)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:120)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:551)
    at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java:411)
    at net.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:732)
    at net.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:58)
    at net.sf.jasperreports.engine.fill.AbstractThreadSubreportRunner.run(AbstractThreadSubreportRunner.java:216)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)



O Campo no Ireport já está como Double e no Java tbm estou passando os valores como Double.

Valeu.

Davi Mustafa

unread,
Aug 12, 2015, 3:16:05 PM8/12/15
to javasf: JavaServer Faces Group
Cara quando tu criou a variável no IReports tu botou um tipo A e em algum momento após isso tu mudou o tipo da variável? Se sim, verifica no teu relatório se a que está no relatório tambem foi mudada. Se tu criou de um tipo A jogou no report como tipo A depois mudou essa variável pra tipo B, a do relatório continua como A. Tem que remover e jogar novamente no report.

--
Você recebeu essa mensagem porque está inscrito no grupo "javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para javasf+un...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/javasf.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/javasf/9fbcb9f0-af9b-470d-929a-30676620dcbb%40googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Davi Mustafa

Reply all
Reply to author
Forward
0 new messages