[RESOLVIDO]Problemas com vraptor

2 respostas
R

Estou tendo um problema no meu projeto,uso o vraptor 3.4.1, apache tomcat 7.0.26. Já exclui a aplicação e reiniciei o servidor mas continua com erro.

Aqui vai o erro.

Grave: Servlet.service() for servlet jsp threw exception

javax.el.ELException: Cannot convert P of type class java.lang.String to class java.lang.Long

at org.apache.el.lang.ELSupport.coerceToNumber(ELSupport.java:304)

at org.apache.el.lang.ELSupport.coerceToNumber(ELSupport.java:283)

at org.apache.el.lang.ELSupport.equals(ELSupport.java:144)

at org.apache.el.parser.AstEqual.getValue(AstEqual.java:40)

at org.apache.el.ValueExpressionImpl.getValue(ValueExpres.sionImpl.java:189)

at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:985)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp._jspx_meth_c_005fwhen_005f0(historicoFinanceiro_jsp.java:442)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp._jspx_meth_c_005fchoose_005f0(historicoFinanceiro_jsp.java:384)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp._jspx_meth_c_005fforEach_005f0(historicoFinanceiro_jsp.java:231)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp.access$4(historicoFinanceiro_jsp.java:187)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp$Helper.invoke2(historicoFinanceiro_jsp.java:737)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp$Helper.invoke(historicoFinanceiro_jsp.java:766)

at org.apache.tiles.jsp.context.JspUtil.evaluateFragmentAsString(JspUtil.java:297)

at org.apache.tiles.jsp.taglib.PutAttributeTag.doTag(PutAttributeTag.java:256)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp._jspx_meth_tiles_005fputAttribute_005f1(historicoFinanceiro_jsp.java:144)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp.access$1(historicoFinanceiro_jsp.java:132)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp$Helper.invoke0(historicoFinanceiro_jsp.java:696)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp$Helper.invoke(historicoFinanceiro_jsp.java:760)

at org.apache.tiles.jsp.context.JspUtil.evaluateFragment(JspUtil.java:279)

at org.apache.tiles.jsp.taglib.InsertTemplateTag.doTag(InsertTemplateTag.java:254)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp._jspx_meth_tiles_005finsertTemplate_005f0(historicoFinanceiro_jsp.java:110)

at org.apache.jsp.WEB_002dINF.jsp.financeiro.historicoFinanceiro_jsp._jspService(historicoFinanceiro_jsp.java:85)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)

at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)

at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at br.com.caelum.vraptor.core.DefaultStaticContentHandler.deferProcessingToContainer(DefaultStaticContentHandler.java:69)

at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:79)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)

at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:471)

at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:402)

at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329)

at br.com.caelum.vraptor.view.DefaultPageResult.defaultView(DefaultPageResult.java:67)

at br.com.caelum.vraptor.interceptor.ForwardToDefaultViewInterceptor.intercept(ForwardToDefaultViewInterceptor.java:60)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.interceptor.ExecuteMethodInterceptor.intercept(ExecuteMethodInterceptor.java:85)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.core.LazyInterceptorHandler.execute(LazyInterceptorHandler.java:61)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:56)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.interceptor.ExceptionHandlerInterceptor.intercept(ExceptionHandlerInterceptor.java:71)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.interceptor.FlashInterceptor.intercept(FlashInterceptor.java:83)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.interceptor.InstantiateInterceptor.intercept(InstantiateInterceptor.java:48)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.newtecnologia.wds.interceptor.AutenticacaoInterceptor.intercept(AutenticacaoInterceptor.java:63)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.interceptor.ResourceLookupInterceptor.intercept(ResourceLookupInterceptor.java:69)

at br.com.caelum.vraptor.core.ToInstantiateInterceptorHandler.execute(ToInstantiateInterceptorHandler.java:54)

at br.com.caelum.vraptor.core.DefaultInterceptorStack.next(DefaultInterceptorStack.java:54)

at br.com.caelum.vraptor.core.EnhancedRequestExecution.execute(EnhancedRequestExecution.java:44)

at br.com.caelum.vraptor.VRaptor$1.insideRequest(VRaptor.java:91)

at br.com.caelum.vraptor.ioc.guice.GuiceProvider.provideForRequest(GuiceProvider.java:82)

at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:88)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)

at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)

at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)

at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)

at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)

at java.lang.Thread.run(Thread.java:722)

Abr 26, 2012 12:01:20 PM org.apache.catalina.core.StandardWrapperValve invoke
Grave: Servlet.service() for servlet [default] in context with path [/WDSCliente] threw exception
br.com.caelum.vraptor.validator.ValidationException

Aqui vai o meu jsp.

<%@ page language ="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix ="tiles" uri="http://tiles.apache.org/tags-tiles" %>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<tiles:insertTemplate template="/WEB-INF/jsp/template.jsp">
<tiles:putAttribute name="scripts"> </tiles:putAttribute>
<tiles:putAttribute name="body">
              <div id="content" class="box">
                    <h2 class="page-title">
                        Financeiro Histórico</h2>
                    <div class="breadcrumb">
                        <a href="<c:url value="/principal/index"/>" id="home">Home</a> » <a href="<c:url value="/historicoFinanceiro"/>">Financeiro Histórico</a></div>
                    <table class="historico">
                        <thead>
                            <tr>
                                <td>Código</td>
                                <td>Vencimento</td>
                                <td>Pagamento</td>
                                <td>Valor R$</td>
                                <td>Multas/Juros</td>
                                <td>Total</td>
                                <td>Status</td>
                            </tr>
                        </thead>
                        <tbody>
								<c:forEach items="${ boletos }" var="boleto">
									<tr>
										<td>${ boleto.codigo }</td>
										<td><fmt:formatDate value="${ boleto.vencimento }" pattern="dd/MM/yyyy" type="date"/></td>
										<td><fmt:formatDate value="${ boleto.dataConfirmacao }" pattern="dd/MM/yyyy" type="date"/></td>
										<td><fmt:formatNumber value="${ boleto.valor}" currencySymbol="" type="currency"/></td>
										<td><fmt:formatNumber value="${ boleto.valorApurado - boleto.valor }" currencySymbol="" type="currency"/></td>
										<td><fmt:formatNumber value="${ boleto.valorApurado }" currencySymbol="" type="currency"/></td>
										<td>
											<c:choose>
												<c:when test="${ boleto.status == 'P' }">Pendente</c:when>
												<c:when test="${ boleto.status == 'C' }">Confirmado</c:when>
												<c:when test="${ boleto.status == 'R' }">Renegociado</c:when>
												<c:when test="${ boleto.status == 'S' }">Sustado - Cheque</c:when>
												<c:when test="${ boleto.status == 'D' }">Devolvido sem fundos - Cheque</c:when>
												<c:when test="${ boleto.status == 'L' }">Lançado em Perdas - Lixo</c:when>
												<c:when test="${ boleto.status == 'E' }">Excluido - Cancelado</c:when>
												<c:when test="${ boleto.status == 'T' }">Cheque de Terceiros</c:when>
												<c:when test="${ boleto.status == 'A' }"> Apagado, Eliminado, Anulado</c:when>
											</c:choose>
										</td>
									</tr>
								</c:forEach>
                        </tbody>
                    </table>
                </div>
                <div class="clear">
                </div>
</tiles:putAttribute>
</tiles:insertTemplate>

2 Respostas

Lucas_Cavalcanti
<c:when test="${ boleto.status == 'P' }">Pendente</c:when>

é nessa linha que tá dando erro? se sim, boleto.status é um enum? é uma String?

R

Já resolvi o problema, mudei a versão do tomcat para 7.019 e voltou a funcionar,não sei prq mas da 7.20 pra frente sempre dava erro. Mas o problema não estava na jsp,ou é o vraptor ou o tomcat que está com problemas. Mas eu já vi esse problema acontecer em outros projetos mas a unica solução foi trocar a versão do tomcat no servidor ou usar glassfish.

Criado 26 de abril de 2012
Ultima resposta 26 de abr. de 2012
Respostas 2
Participantes 2