Fórum Uso correto do CDI #443327
16/05/2013
0
Estou com o seguinte problema na hora de injetar meu DAO:
Minha injeção:
Construtor do DAO:
DAOFactory:
Na linha do método aparece um warning: Dependência não satisfeita: nenhum bean corresponde ao ponto de injeção.
Quando tento subir a aplicação no log do tomcat aparece:
Disparando logo apos um NullPointerException
Andei lendo sobre o assunto e aparentemente a classe DAOFactory era para solucionar esse erro, já que o construtor do DAO Generico necessita de um tipo Class... no qual não sabe instanciar sozinho. Devo ter esquecido ou não configurei de algum detalhe para que funcione essa injeção.
Minha injeção:
@Inject private DAO<Categoria> dao;
Construtor do DAO:
public DAO(Class<T> classe, EntityManager em) {
this.classe = classe;
this.em = em;
}
DAOFactory:
public class DAOFactory {
@Produces
public DAO createDAO(InjectionPoint injectionPoint, EntityManager em) {
ParameterizedType type = (ParameterizedType) injectionPoint.getType();
Class classe = (Class) type.getActualTypeArguments()[0];
return new DAO(classe, em);
}
}
Na linha do método aparece um warning: Dependência não satisfeita: nenhum bean corresponde ao ponto de injeção.
Quando tento subir a aplicação no log do tomcat aparece:
WELD-001408 Unsatisfied dependencies for type [DAO<Categoria>] with qualifiers [@Default] at injection point [[BackedAnnotatedField] @Inject private br.kranio.bean.CategoriaBean.dao]
Disparando logo apos um NullPointerException
Andei lendo sobre o assunto e aparentemente a classe DAOFactory era para solucionar esse erro, já que o construtor do DAO Generico necessita de um tipo Class... no qual não sabe instanciar sozinho. Devo ter esquecido ou não configurei de algum detalhe para que funcione essa injeção.
Jeferson Cruz
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)