é para um framework... para rodar em um ambiente JEE6 .... não posso supor que estou trabalhando com spring ou algo do genero...
EU consegui fazer, + ou - .... funciona para a parte do CDI, mas não funciona bem de dentro dos EJBs / ManagedBeans ... ainda não entendi bem o pq
/**
*
* @author Tomaz Lavieri
*/
@javax.enterprise.context.Dependent
public class ContainerImpl implements Container{
@javax.inject.Inject
private javax.enterprise.inject.Instance<Object> container;
public <T> T instanceFor(Class<T> type) {
return container.select(type).get();
}
}
funciona bem.... quando estou fora do EJB
@Named("ha")
public class Bleu {
@Inject
private Container container;
public String getBla() {
return ""+container.instanceFor(ItemFacade.class).find("10").getName();
}
}
neste ponto funciona... lá na view quando coloco #{ha.bla} recebo o nome do Item de id = 10
porem c tento buscar o container dentro do EJB, levo null pointer na cara....
Acredito que a solução seja essa.... e que realmente, não posso injetar algo que não é @Stateless ou @Statefull dentro do EJB... pensei que podia, mas pelo visto não pode....
mas o meu maior problema, é que o @ManageBean também não aceita a injeção... =/
na verdade eu não consegui dar @Inject em nada dentro do ManagedBean