Eu poderia criar um construtor sem parâmetros que realiza o trabalho do init de criar meu DAO genérico, ou o CDI precisa que não exista um método construtor.
Eu poderia criar um construtor sem parâmetros que realiza o trabalho do init de criar meu DAO genérico, ou o CDI precisa que não exista um método construtor.
Olá,
Tente fazer da sua forma e então verifique as mensagens de erro.
Veja: http://docs.oracle.com/javaee/7/api/javax/annotation/PostConstruct.html
Olá Carlos,
Ao criar o DAO genérico no construtor default o mesmo iria utilizar o EntityManager nulo, pois a injeção deste só ocorreria após após a inicialização do construtor.
Lembrando que o CDI segue a ordem de inicialização da classe com construtor, injeção e depois o @PostConstruct (caso exista).
Ao criar o dao no metodo init marcado com @PostConstruct o mesmo receberá o EntityManager já injetado pelo CDI.