Tomcat5.5.9 Type mismatch:cannot convert from Integer to int Resolvido

4 respostas
eloimendes

Olá!

Tenho uma aplicação web que utilizava:
JDK1.5.0_11-b03
HIBERNATE 3.3GA
TOMCAT 5.5.17

Rodava normalmente, porém o servidor que eu hospedei utiliza o JDK1.5.0(nãoseioresto) e o tomcat 5.5.9.
Troquei a minha versão do tomcat pra 5.5.9 e descobri q o erro era por causa do tomcat...

Alguém sabe como resolvo isso?

Este é o erro...

Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 9 in the jsp file: /consulta/estcab/consultaEstcab.jsp
Generated servlet error:
Type mismatch: cannot convert from Integer to int

An error occurred at line: 9 in the jsp file: /consulta/estcab/consultaEstcab.jsp
Generated servlet error:
Type mismatch: cannot convert from Integer to int


        at org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:84)
        at org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:328)
        at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:397)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:288)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:267)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:255)
        at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:556)
        at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:293)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:291)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
        at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
        at java.lang.Thread.run(Thread.java:595)

4 Respostas

marcosbrandao

Olá eloimendes

Pelo erro que gerou fica claro que eh um erro de Cast.

No java 1.4 o Cast de um Integer para int não faz automaticamente, no java 1.5 o problema foi resolvido com o autoboxing.
Tente colocar o metodo intValue() no objeto Integer onde ocorre o erro…

tucamefe

Tem certeza que o jdk é o 5.0???

Esse erro está parecendo que você está usando o jdk 1.4. No eclipse você tem que checar se o compiler do java está marcado para o jdk 5.0.

Window > Preferences > Java > Compiler > …

eloimendes

Tentei colocar o intValue e tbm não funcionou…

Verifiquei e o JDK está configurado pra 1.5 mesmo. Voltei o servidor aki pra tomcat 5.5.17 e rodou certim… O problema é o tomcat 5.5.9 … Alguma luz no fim do túnel???

eloimendes

Resolvi!!!

Tinha outra parte com cast de Integer para int, usei o intValue() como o marcosbrandao disse e funcinou!

Muito obrigado!

Criado 25 de maio de 2007
Ultima resposta 25 de mai. de 2007
Respostas 4
Participantes 3