Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Erro ao iniciar o TomCat após inserir @Injection

Boa noite, alguem passou por esse problema? Assim que adicionei a anotação @Injection quando inicio o Tomcat é lançado um erro na console do servidor:

GRAVE: Exception starting filter vraptor
javax.servlet.ServletException: Dependencies were not set. Do you have a Weld/CDI listener setup in your web.xml?
    at br.com.caelum.vraptor.VRaptor.validateIfCdiIsFound(VRaptor.java:156)
    at br.com.caelum.vraptor.VRaptor.init(VRaptor.java:89)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4809)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5485)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

Alguém já viu esse erro? Obrigado.

4 respostas

Boa noite Bruno. Você adicionou o arquivo beans.xml na pasta web-inf do seu projeto? Para habilitar o CDI no projeto é necessário adicionar o arquivo mesmo que vazio.

Bom dia Matheus, muito obrigado pela ajuda. O arquivo beans.xml estava dentro de \src\main\resources\META-INF, movi ele para dentro de WEB-INF mas o problema continua.

solução!

Oi Bruno

Pela mensagem de erro do seu console parece que você se esqueceu de mapear o listener que é utilizado pelo weld no arquivo WEB-INF/web.xml do projeto:

<listener>
    <listener-class>org.jboss.weld.environment.servlet.Listener</listener-class>
</listener>

Você pode encontrar mais informações na documentação do site do VRaptor 4 na parte de dependências e pré-requisitos: http://www.vraptor.org/pt/docs/dependencias-e-pre-requisitos/

Bom dia Victor, muito obrigado pela ajuda. O listener utilizado pelo weld está mapeado dentro do web.xml.