Fórum Loja Virtual completa #397477
17/03/2011
0
Estou com um problema ao instanciar EntityManager, esta retornando nulo, alguém passou por esse problema, segue o código :
public abstract class BasicSessionBean implements Serializable{
private static final long serialVersionUID = 1L;
@PersistenceContext private EntityManager em;
public BasicSessionBean(){ }
public EntityManager getEm() { return em; }
....Quando vou utilizar o método abaixo o "em" ele está null
private Query createQuery(String query, Object[] values) { Query qr = em.createQuery(query); if (values != null) { for (int i = 0; i < values.length; i++) { Object object = values[i]; qr.setParameter(i + 1, object); } } return qr; }
Obs. O arquivo persistence.xml existe.
E quando eu escrevo o codigo da seguinte forma, funciona :
EntityManagerFactory emf = Persistence.createEntityManagerFactory("EcommerceJPAPU"); @PersistenceContext private EntityManager em = emf.createEntityManager();
Só que não executa as ações do "em" query, persist....
Valeu!Sou guerreiro, desistir jamais...
Noésio Souza
Curtir tópico
+ 0Posts
18/03/2011
Davi Costa
E para sua segunda parte do código, não faz sentido instancar um objeto e tentar injetá-lo:
EntityManagerFactory emf = Persistence.createEntityManagerFactory("EcommerceJPAPU"); @PersistenceContext private EntityManager em = emf.createEntityManager();
Usamos esse annotation justamente para o container gerenciar esses objetos e não termos que nos preocupar com ele.
Att Davi
Gostei + 0
25/03/2011
Dyego Carmo
Funcionou ?
Gostei + 0
27/03/2011
Noésio Souza
Faltava :
public CategoryFace(){ setSelectedBean(new Category()); }
Por isso dava null.
Valeu!
Gostei + 0
28/03/2011
Davi Costa
Caso tenha resolvido, favor fechar a pendência.
att Davi
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)