Java.lang.NoSuchFieldError: deferredExpression - socorro!

1 resposta
daniel.schulz

Olá pessoal! :slight_smile:

Estou com um problema que, já há alguns meses (!!!), está me tirando o sono. Tenho um sistema rodando num servidor com JBoss 4.2.3, usando Java SE 5 e EE 5. Quado estou utilizando o sistema ele gera o erro “java.lang.NoSuchFieldError: deferredExpression” aleatoriamente, ou seja, acontece em páginas onde não ocorria antes. Aí se vou no Linux e dou um touch na WAR, volta ao normal, mas depois aparece o erro em outra página.

Ok, alguns de vocês devem estar pensando: “ah, isso acontece porque tem duas versões do jstl.jar, uma na aplicação e outra no server”. Mas acontece que se tiro de um lugar e deixo só no outro, todas as minhas JSPs que usam EL deixam de funcionar.

Já tenho um bom tempo de estrada com Java, mas não consigo resolver isso! :oops: Vocês poderiam me ajudar, por favor??

Aí vai parte do stack trace:

java.lang.NoSuchFieldError: deferredExpression

at org.apache.taglibs.standard.tag.common.core.ForEachSupport.release(ForEachSupport.java:178)

at org.apache.jasper.runtime.TagHandlerPool.release(TagHandlerPool.java:146)

at org.apache.jsp.pages.treinamentos.view_005fcadTreinamentos_jsp._jspDestroy(view_005fcadTreinamentos_jsp.java:48)

at org.apache.jasper.runtime.HttpJspBase.destroy(HttpJspBase.java:88)

at org.apache.jasper.servlet.JspServletWrapper.destroy(JspServletWrapper.java:404)

at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)

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

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

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

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

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.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)

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

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

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

at detep.faraoh.servlet.TreinamentoServlet.exibirTreinamento(TreinamentoServlet.java:386)

at detep.faraoh.servlet.TreinamentoServlet.doPost(TreinamentoServlet.java:79)

at detep.faraoh.servlet.TreinamentoServlet.doGet(TreinamentoServlet.java:41)

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

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

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

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

at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

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

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.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)

Obrigado!

1 Resposta

leandronsp

Provavelmente, como vc mesmo citou, deve ter duas versões do jar jstl no seu classpath. Eu já passei por este problema tbm.
Eu tinha uns 3 jstl jar´s, por isso existia esse conflito. Eu deixei só o jstl-api-1.2 e o jstl-impl.

Creio que seja este o problema. Espero ter ajudado.
[]´s

Criado 11 de fevereiro de 2009
Ultima resposta 20 de abr. de 2009
Respostas 1
Participantes 2