PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

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:
    
@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

Jeferson Cruz

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar