JSF 2 + CDI

416 views
Skip to first unread message

Jose Maria Oliveira

unread,
Apr 29, 2014, 12:36:32 PM4/29/14
to jav...@googlegroups.com
Pessoal, boa tarde.

Estou estudando JSF 2 com CDI e está me gerando um erro que não consegui descobrir a causa.
Segue o erro abaixo. Se alguem puder me ajudar, agradeço muito.

No projeto já tem beans.xml no WEB-INF, context.xml no WebContent/META-INF.

Erro:
29/04/2014 13:29:35 org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_30\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jdk1.6.0_30/bin/../jre/bin/server;C:/Program Files/Java/jdk1.6.0_30/bin/../jre/bin;C:/Program Files/Java/jdk1.6.0_30/bin/../jre/lib/amd64;C:\Oracle\product\11.2.0\client_1;C:\Oracle\product\11.2.0\client_1\bin;C:\oraclexe\app\oracle\product\11.2.0\server\;C:\oraclexe\app\oracle\product\11.2.0\server\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Kaspersky Lab\Kaspersky Endpoint Security 10 for Windows\;C:\Oracle\product\11.2.0\client_1;C:\Oracle\product\11.2.0\client_1\bin;C:\oraclexe\app\oracle\product\11.2.0\server\;C:\oraclexe\app\oracle\product\11.2.0\server\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Kaspersky Lab\Kaspersky Endpoint Security 10 for Windows\;C:\Program Files\Java\jdk1.6.0_30\bin\;C:\gradle-1.2\bin;D:\grails-2.3.4\bin;D:\groovy-1.8.9\bin;D:\Programas\MySQL\mysql-5.6.16\bin;D:\MeuWorkspace\eclipse;;.
29/04/2014 13:29:35 org.apache.tomcat.util.digester.SetPropertiesRule begin
AVISO: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:hsa1' did not find a matching property.
29/04/2014 13:29:35 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
29/04/2014 13:29:35 org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
29/04/2014 13:29:35 org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 433 ms
29/04/2014 13:29:35 org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
29/04/2014 13:29:35 org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.42
29/04/2014 13:29:36 org.jboss.weld.environment.servlet.EnhancedListener onStartup
INFO: Initialize Weld using ServletContainerInitializer
29/04/2014 13:29:36 org.jboss.weld.bootstrap.WeldStartup <clinit>
INFO: WELD-000900: 2.2.0 (SP1)
29/04/2014 13:29:36 org.jboss.weld.bootstrap.WeldStartup startContainer
INFO: WELD-000101: Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously.
29/04/2014 13:29:36 org.jboss.weld.interceptor.util.InterceptionTypeRegistry <clinit>
WARN: WELD-001700: Interceptor annotation class javax.ejb.PostActivate not found, interception based on it is not enabled
29/04/2014 13:29:36 org.jboss.weld.interceptor.util.InterceptionTypeRegistry <clinit>
WARN: WELD-001700: Interceptor annotation class javax.ejb.PrePassivate not found, interception based on it is not enabled
29/04/2014 13:29:36 org.jboss.weld.environment.tomcat.TomcatContainer initialize
INFO: Tomcat 7+ detected, CDI injection will be available in Servlets, Filters and Listeners.
2014-04-29 13:29:38,564 INFO  [org.jboss.weld.environment.servlet.EnhancedListener] Initialize Weld using ServletContainerInitializer
2014-04-29 13:29:38,584 INFO  [org.jboss.weld.Version] WELD-000900: 2.2.0 (SP1)
2014-04-29 13:29:38,758 INFO  [org.jboss.weld.Bootstrap] WELD-000101: Transactional services not available. Injection of @Inject UserTransaction not available. Transactional observers will be invoked synchronously.
2014-04-29 13:29:38,891 WARN  [org.jboss.weld.Interceptor] WELD-001700: Interceptor annotation class javax.ejb.PostActivate not found, interception based on it is not enabled
2014-04-29 13:29:38,892 WARN  [org.jboss.weld.Interceptor] WELD-001700: Interceptor annotation class javax.ejb.PrePassivate not found, interception based on it is not enabled
2014-04-29 13:29:39,013 INFO  [org.hibernate.validator.internal.util.Version] HV000001: Hibernate Validator 5.1.0.Final
2014-04-29 13:29:39,173 WARN  [org.jboss.weld.Event] WELD-000411: Observer method [BackedAnnotatedMethod] public org.omnifaces.VetoAnnotatedTypeExtension.processAnnotatedType(@Observes ProcessAnnotatedType<Object>) receives events for all annotated types. Consider restricting events using @WithAnnotations or a generic type with bounds.
2014-04-29 13:29:39,788 INFO  [org.jboss.weld.environment.tomcat.TomcatContainer] Tomcat 7+ detected, CDI injection will be available in Servlets, Filters and Listeners.
29/04/2014 13:29:39 org.apache.catalina.core.ContainerBase startInternal
GRAVE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/hsa1]]
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
at java.util.concurrent.FutureTask.get(FutureTask.java:83)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800)
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$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/hsa1]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
... 7 more
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied dependencies for type Estados with qualifiers @Default
  at injection point [BackedAnnotatedField] @Inject private br.com.nesher.hsa.controller.infra.EstadoBean.estadoRepository
  at br.com.nesher.hsa.controller.infra.EstadoBean.estadoRepository(EstadoBean.java:0)

at org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:370)
at org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:291)
at org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:134)
at org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:165)
at org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:529)
at org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:68)
at org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:66)
at org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:60)
at org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:53)
... 5 more
29/04/2014 13:29:39 org.apache.catalina.core.ContainerBase startInternal
GRAVE: A child container failed during start
java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:222)
at java.util.concurrent.FutureTask.get(FutureTask.java:83)
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.startup.Catalina.start(Catalina.java:691)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
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$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131)
at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 7 more
29/04/2014 13:29:39 org.apache.catalina.startup.Catalina start
GRAVE: The required Server component failed to start so Tomcat is unable to start.
org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.startup.Catalina.start(Catalina.java:691)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:322)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:456)
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardService[Catalina]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:732)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 7 more
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:443)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 9 more
Caused by: org.apache.catalina.LifecycleException: A child container failed during start
at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1131)
at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:302)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
... 11 more
29/04/2014 13:29:39 org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["http-bio-8080"]
29/04/2014 13:29:39 org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler ["ajp-bio-8009"]
29/04/2014 13:29:39 org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service Catalina
29/04/2014 13:29:39 org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["http-bio-8080"]
29/04/2014 13:29:39 org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler ["ajp-bio-8009"]
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-worker-1] but has failed to stop it. This is very likely to create a memory leak.
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-worker-2] but has failed to stop it. This is very likely to create a memory leak.
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-worker-3] but has failed to stop it. This is very likely to create a memory leak.
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-worker-4] but has failed to stop it. This is very likely to create a memory leak.
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-preloader-1] but has failed to stop it. This is very likely to create a memory leak.
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-preloader-2] but has failed to stop it. This is very likely to create a memory leak.
29/04/2014 13:29:39 org.apache.catalina.loader.WebappClassLoader clearReferencesThreads
GRAVE: The web application [/hsa1] appears to have started a thread named [weld-preloader-3] but has failed to stop it. This is very likely to create a memory leak.

Obrigado.

Att

Arthur Ferreira

unread,
Apr 29, 2014, 12:57:30 PM4/29/14
to jav...@googlegroups.com
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied dependencies for type Estados with qualifiers @Default

Como que está sua classe Estados?

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


--
Você recebeu essa mensagem porque está inscrito no grupo quot;javasf: JavaServer Faces Group" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para javasf+un...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/javasf.
Para ver essa discussão na Web, acesse https://groups.google.com/d/msgid/javasf/CAJHNeuvURQpuzgpz%3D23UkV1M-8MufurJ1MXUJvkqnh216V2sAw%40mail.gmail.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Jose Maria Oliveira

unread,
Apr 29, 2014, 1:13:33 PM4/29/14
to jav...@googlegroups.com
Olá Arthur.

Esta é a classe:

/**
 * 
 */
package br.com.nesher.hsa.persistence.repository.infra.logradouro;

import javax.inject.Inject;
import javax.persistence.EntityManager;

import br.com.nesher.hsa.persistence.model.infra.logradouro.Estado;
import br.com.nesher.hsa.persistence.repository.AbstractPersistence;

/**
 * @author jose.oliveira
 *
 */
public class Estados extends AbstractPersistence<Estado, Long> {

/**
* Serial.
*/
private static final long serialVersionUID = 1L;
@Inject
private EntityManager manager;

/**
* Construtor.
* @param pEntityClass Entidade
*/
public Estados(Class<Estado> pEntityClass) {
super(pEntityClass);
}

/**
* {@inheritDoc}
*/
@Override
protected EntityManager getEntityManager() {
return manager;
}
}



Arthur Ferreira

unread,
Apr 29, 2014, 2:41:10 PM4/29/14
to jav...@googlegroups.com
Você está usando:

@Inject
private EntityManager manager

Você fez o Producer desse cara?

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


Jose Maria Oliveira

unread,
Apr 29, 2014, 2:56:02 PM4/29/14
to jav...@googlegroups.com

@ApplicationScoped
public class EntityManagerProducer {
private EntityManagerFactory factory;

public EntityManagerProducer() {
factory = Persistence.createEntityManagerFactory("HsaPU");
}

@Produces @RequestScoped
public EntityManager createEntityManager() {
return factory.createEntityManager();
}

public void closeEntityManager(@Disposes EntityManager manager) {
manager.close();
}
}



Arthur Ferreira

unread,
Apr 29, 2014, 3:33:43 PM4/29/14
to jav...@googlegroups.com
Tenho quase certeza que o problema pode ser o @ApplicationScoped no seu Producer. Não precisa haver escopo para essa classe. Ele será instanciado à medida que você pedir um EntityManager.

O que eu uso é o seguinte:

public class EntityManagerProducer {
private static EntityManagerFactory factory = Persistence.createEntityManagerFactory("HsaPU");

@Produces @RequestScoped
public EntityManager createEntityManager() {
return factory.createEntityManager();
}

public void closeEntityManager(@Disposes EntityManager manager) {
manager.close();
}
}

Arthur Franco Ferreira 
Analista Desenvolvedor Web Java (Sênior) e .NET (Pleno)
Licenciado em Computação pela UNILASALLE-RJ
Instrutor Caelum
http://www.linkedin.com/in/arthurferreira


Jose Maria Oliveira

unread,
Apr 29, 2014, 3:37:13 PM4/29/14
to jav...@googlegroups.com
Obrigado Arthur.

Vou fazer um teste e dou um retorno.

Att.


Reply all
Reply to author
Forward
0 new messages