Muitos erros Unable to compile class for JSP

210 views
Skip to first unread message

Humberto Corrêa da Silva

unread,
May 20, 2015, 9:41:45 PM5/20/15
to caelum-...@googlegroups.com
Boa noite pessoal,

Eu comecei a desenvolver um sistema utilizando o framework VRaptor e desde o início do desenvolvimento enfrento este problema "Unable to compile class for JSP". Meu ambiente é o seguinte:

  • VRaptor 4.2.0-RC2 (no início era o 4.1.4)
  • Wildfly 8.2.0.Final
  • Java 8
  • IntelliJ IDEA 14.1.3
Cada hora o erro aparece em uma página diferente, e todas as páginas que lançam o erro já funcionaram perfeitamente em outros momentos. Como citei logo acima, eu atualizei a versão do VRaptor para tentar resolver, mas usei o sistema por alguns minutos e novamente o erro foi lançado. Não sei do que se trata este erro, pois estou iniciando em Java agora. Mas acredito que se fosse um erro em meu JSP o erro ocorreria sempre, e na mesma página.

Alguém já passou por este problema? Conseguiu resolver?

Rodrigo Turini

unread,
May 20, 2015, 10:36:42 PM5/20/15
to caelum-...@googlegroups.com
você associou o server runtime do wildfly no seu projeto? pra ver, clica com o 
botão direito no projeto, propriedades, java build path e confere se lá aparece 
o wildfly. Se não tiver, é só dar um add, selecionar server runtime e wildfly. abs

--
Você recebeu essa mensagem porque está inscrito no grupo "caelum-vraptor" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para caelum-vrapto...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para caelum-...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/caelum-vraptor.
Para mais opções, acesse https://groups.google.com/d/optout.

Humberto Corrêa da Silva

unread,
May 20, 2015, 10:50:54 PM5/20/15
to caelum-...@googlegroups.com, rodrigo...@caelum.com.br
Rodrigo, estas instruções são para o IntelliJ? não achei onde fazer isto nesta IDE.

Carlos Spohr

unread,
May 20, 2015, 10:51:23 PM5/20/15
to caelum-...@googlegroups.com

Talvez no intellij vc precise adicionar algumas libs do jsp no seu pom.xml

Humberto Corrêa da Silva

unread,
May 20, 2015, 11:02:16 PM5/20/15
to caelum-...@googlegroups.com
Quais seriam estas libs Carlos? No pom do projeto já tenho a jstl 1.2.

Carlos Spohr

unread,
May 20, 2015, 11:05:39 PM5/20/15
to caelum-...@googlegroups.com

Não lembro de cabeça, mas quando dá pau nas jsp você precisa colocar as libs da jsp api etc.

Humberto Corrêa da Silva

unread,
May 20, 2015, 11:21:07 PM5/20/15
to caelum-...@googlegroups.com
Entendi, com a dica do Rodrigo Turini eu adicionei a lib do Wildfly no projeto, e na lista tem a jboss-jsp-api_2.3... vou começar a fazer os testes com esta mudança e ver se não vai mais ocorrer o erro.

Humberto Corrêa da Silva

unread,
May 21, 2015, 6:20:38 PM5/21/15
to caelum-...@googlegroups.com, rodrigo...@caelum.com.br
Rodrigo, mesmo depois de associar o server runtime do wildfly o erro continua, estou com receio de que isso venha acontecer em produção. Estes erros, acontecendo com a frequência que vem acontecendo em dev, vai queimar a imagem da empresa com o cliente. Você tem mais alguma dica para que eu possa testar aqui?
Obrigado


Em quarta-feira, 20 de maio de 2015 23:36:42 UTC-3, Rodrigo Turini escreveu:

Rodrigo Turini

unread,
May 22, 2015, 7:55:01 AM5/22/15
to Humberto Corrêa da Silva, caelum-...@googlegroups.com
Oi Humberto, qual o erro que acontece? É uma exception ou só erro no JSP?
Se puder, manda a msg de erro pra ficar mais fácil encontrarmos a solução :)

Humberto Corrêa da Silva

unread,
May 22, 2015, 8:15:22 AM5/22/15
to caelum-...@googlegroups.com, rodrigo...@caelum.com.br
É uma exception com essa mensagem "Unable to compile class for JSP", assim que ocorrer vou copiar a stack e postar então. Obrigado por enquanto.

Humberto Corrêa da Silva

unread,
May 22, 2015, 11:22:34 AM5/22/15
to caelum-...@googlegroups.com, rodrigo...@caelum.com.br
Rodrigo, segue o erro. Neste momento aconteceu na lista.jsp, mas também ocorre em outras páginas do sistema. Desde já agradeço a ajuda.

12:10:02,049 ERROR [io.undertow.request] (default task-6) UT005023: Exception handling request to /financeiro/WEB-INF/jsp/clientes/lista.jsp: javax.servlet.ServletException: /WEB-INF/jsp/clientes/lista.jsp raised an exception
at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:127) [vraptor-4.2.0-RC2.jar:]
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:56) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:45) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:63) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:58) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:70) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.security.handlers.SecurityInitialHandler.handleRequest(SecurityInitialHandler.java:76) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:261) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:247) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:76) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:166) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:197) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:759) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_25]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_25]
at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_25]
Caused by: org.apache.jasper.JasperException: JBWEB004001: Unable to compile class for JSP
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:616) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:309) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:326) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:259) [jastow-1.0.0.Final.jar:1.0.0.Final]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [jboss-servlet-api_3.1_spec-1.0.0.Final.jar:1.0.0.Final]
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:130) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at br.com.caelum.vraptor.core.DefaultStaticContentHandler.deferProcessingToContainer(DefaultStaticContentHandler.java:87) [vraptor-4.2.0-RC2.jar:]
at br.com.caelum.vraptor.core.DefaultStaticContentHandler$Proxy$_$$_WeldClientProxy.deferProcessingToContainer(Unknown Source) [vraptor-4.2.0-RC2.jar:]
at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:114) [vraptor-4.2.0-RC2.jar:]
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) [undertow-core-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:249) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchToPath(ServletInitialHandler.java:192) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at io.undertow.servlet.spec.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:160) [undertow-servlet-1.1.0.Final.jar:1.1.0.Final]
at br.com.caelum.vraptor.view.DefaultPageResult.defaultView(DefaultPageResult.java:81) [vraptor-4.2.0-RC2.jar:]
at br.com.caelum.vraptor.observer.ForwardToDefaultView.forward(ForwardToDefaultView.java:67) [vraptor-4.2.0-RC2.jar:]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_25]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_25]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_25]
at java.lang.reflect.Method.invoke(Method.java:483) [rt.jar:1.8.0_25]
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:90) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:271) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:258) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:237) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:174) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:170) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:46) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:124) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.EventImpl.fire(EventImpl.java:84) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at br.com.caelum.vraptor.observer.RequestHandlerObserver.handle(RequestHandlerObserver.java:94) [vraptor-4.2.0-RC2.jar:]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_25]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_25]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_25]
at java.lang.reflect.Method.invoke(Method.java:483) [rt.jar:1.8.0_25]
at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:90) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:271) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:258) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:237) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:174) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:170) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:46) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:124) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at org.jboss.weld.event.EventImpl.fire(EventImpl.java:84) [weld-core-impl-2.2.6.Final.jar:2014-10-03 10:05]
at br.com.caelum.vraptor.VRaptor.doFilter(VRaptor.java:123) [vraptor-4.2.0-RC2.jar:]
... 28 more
Caused by: java.io.IOException: tmpFile.renameTo(classFile) failed
at org.apache.jasper.compiler.SmapUtil$SDEInstaller.install(SmapUtil.java:243) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.compiler.SmapUtil.installSmap(SmapUtil.java:162) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:466) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:361) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:339) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.compiler.Compiler.compile(Compiler.java:326) [jastow-1.0.0.Final.jar:1.0.0.Final]
at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:604) [jastow-1.0.0.Final.jar:1.0.0.Final]
... 78 more

Carlos Spohr

unread,
May 22, 2015, 12:15:39 PM5/22/15
to caelum-...@googlegroups.com
Humberto, boa tarde.

Se você deixar a sua página JSP sem lógica, apenas a declaração padrão de uma página jsp, ela ainda já erro?

Você tem as libs padrão do container web, no caso a servlet-api e jsp-api para ter suporte ao uso das expression language e tag-api (c:, fmt, etc?)

Dá uma olhada nesse gist e compare com o seu pom.xml:




--
Atenciosamente,
Carlos Alberto Junior Spohr Poletto

Humberto Corrêa da Silva

unread,
May 22, 2015, 12:28:26 PM5/22/15
to caelum-...@googlegroups.com
Boa tarde Carlos,

Na página de login por exemplo, eu só tenho

No topo

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

E estes imports de css e js

<!-- CSS -->
<link href="<c:url value="/resources/css/bootstrap.min.css"/>" rel="stylesheet">
<link href="<c:url value="/resources/css/bootstrap-theme.min.css"/>" rel="stylesheet">
<link href="<c:url value="/resources/css/style-main.css"/>" rel="stylesheet">

<!-- JavaScript -->
<script src="<c:url value="/resources/js/jquery.min.js"/>"></script>
<script src="<c:url value="/resources/js/bootstrap.min.js"/>"></script>

E as vezes quando vai abrir o sistema ocorre erro 500 nesta página. Mas só de vez em quando, as vezes o erro é em outra.

Sobre as dependências, eu não tenho estas:

<dependency>
<groupId>org.jboss.weld.servlet</groupId>
<artifactId>weld-servlet-core</artifactId>
<version>2.1.2.Final</version>
</dependency>
 
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-core-impl</artifactId>
<version>2.1.2.Final</version>
</dependency>

Para que elas servem?

Carlos Spohr

unread,
May 22, 2015, 12:39:28 PM5/22/15
to caelum-...@googlegroups.com
Elas são as dependências do próprio weld, mas não lembro agora se era para os casos em que você está rodando num web container padrão, não num application server.

O erro 500 você pega num caso de nullpointer numa linha do seu controller, ou numa chamada de um atributo que não existe no objeto...lá pela JSP:

Seja bem-vindo ${fulano.namE}, onde o correto seria ${fulano.name}...

Coloca o seu debugger no começo do seu método do controller e vai até o fim..para ver se sai do vraptor, caso contrário, limpe o seu jsp e adicione linhas aos poucos pra tentar achar o local do erro..

Também habilite o debug no log4j.xml pra ter mais detalhes.

Humberto Corrêa da Silva

unread,
May 25, 2015, 9:56:27 PM5/25/15
to caelum-...@googlegroups.com
Boa noite pessoal,

Acho que descobri o motivo de tantos erros nas minhas páginas JSP. Eu tenho o antivírus McAfee instalado no meu notebook, e este antivírus faz um escaneamento em tempo real nos arquivos do sistema operacional, quando eu tentava debugar o meu sistema e o servidor de aplicação tentava compilar o JSP o antivírus acessava o arquivo antes, ocasionando problemas na compilação, pois o arquivo já estava sendo utilizado por outro processo. Depois que eu desativei o escaneamento não tive mais problemas.

Ainda estou testando, mas pelo jeito o problema foi resolvido. Consegui esta dica em um fórum do jboss.

Agradeço a ajuda. 

Rodrigo Turini

unread,
May 26, 2015, 12:38:35 AM5/26/15
to caelum-...@googlegroups.com
Eu nunca teria pensado nisso, Humberto! ;) Legal que conseguiu resolver

--

Jonas Nepomuceno

unread,
May 26, 2015, 11:54:17 AM5/26/15
to caelum-...@googlegroups.com
Realmente, eu tbm não imaginaria algo nesse sentido
--
São Paulo Realmente é aquilo que
Reply all
Reply to author
Forward
0 new messages