Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao fazer um session bean extender classe externa ao projeto

Olá, tenho uma classe daquele tipo "dao generico" onde eu faço meu dao estender essa classe e o dao já ganha todos os métodos utilitários de um dao, o problema e que quando faço meu session bean extender essa classe recebo o erro:

org.jboss.weld.exceptions.CreationException: WELD-000079: Could not find the EJB in JNDI: class org.dao.UsuarioDAO$Proxy$_$$_Weld$EnterpriseProxy$

Sendo UsuarioDAO o session bean que tenta extender o dao generico, alguma dica?

1 resposta
solução!

Oi Danillo,

a minha sugestão é não usar herança. Aquele DAO genérico é o exemplo clássico de mau uso de herança, tbm chamado de herança por preguiça :)

O problema é que herança causa um relacionamento muito forte que só deve ser utilizado quando vc precisa de reutilização E polimorfismo. No caso do DAO genérico vc apenas quer reutilizar o código da classe mãe, nada de polimorfismo.

Repare, ao estender a classe DAO, vc pode remover usuários a partir o UsuarioDAO. Faz sentido isso?

Substitua a herança com composição e vc vai ter menos acoplamento e um código mais flexível, ok?

abs