| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 12:04:22
|
roanbrasil
JavaChild
Membro desde: 17/12/2007 12:03:50
Mensagens: 104
Localização: Campinas, SP
Offline
|
Eu tenho os seguintes códigos e estou pegando NullPointerException no meu EntityManager em na classe BaseDAOImpl, por acaso estou fazendo algo errado, pois quando coloco direto no Servlet o @PersistentUnit emf e depois o EntityManager funciona e não vem Null, a partir que abstraio e coloco em um DAO ele começa a dar como NullPointerException, provavelmente estou fazndo algo de errado mas como fazer funcionar no cso de projeto web? Alguém pode me dizer? Precisa do web.xml e persistence.xml? Vou colocar via das dúvidas.
Pra detalhe, estou usando glassfish, as configuirações de senha e tale stá ok, tanto q funciona transação ou consulta no servlet somente quando absatraio que pego NullPointerException...
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 12:05:08
|
roanbrasil
JavaChild
Membro desde: 17/12/2007 12:03:50
Mensagens: 104
Localização: Campinas, SP
Offline
|
StackTrace, sei que vocês vão pedir.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 13:06:18
|
walyson amaral
Debugger
![[Avatar]](/images/avatar/290b88967c9f0c818100b9cadb7d3c1a.jpg)
Membro desde: 19/12/2008 22:29:30
Mensagens: 50
Offline
|
Olá roanbrasil. só por desencargo, seu persistence.xml está dentro do diretorio META-INF ?
Como está seu jdbc/TestDS, poderia posta-lo.
Qual servidor de aplicação está usando ?
|
walyson amaral
("O essencial é invisível aos olhos") |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 13:18:15
|
roanbrasil
JavaChild
Membro desde: 17/12/2007 12:03:50
Mensagens: 104
Localização: Campinas, SP
Offline
|
Opa walyson, tudo bem? O persistence.xml está ok e está dentro do META-INF tanto que como vou postar no exemplo abaixo ele funciona e acessa o banco.. A partir do momento que tiro desse Servlet que faço request diretamente do Browser ele não funciona mais. O Servlet seria UserResource e a classe EJB BaseDAOImpl . Então no código abaixo funciona, só quando mudo que para de funcionar. O servidor de aplicação é glassfish uma vez que o jersey é da sun e tudo funciona mais prático.
Eu estou com um projeto utilizando Jersey Rest web services. Gerei o projeto com maven2 e estou usando o JPA. A classe Jersey se chama Resource que é nada mais nada menos que um Servlet. Por exemplo o resource: O código abaixo funciona normalmente.
@PersistenceUnit(unitName="PU")
EntityManagerFactory emf;
EntityManager em = emf.createEntityManager();
... //consulta de código Query q= bla bla bla
A partir do momento que tiro o que está em negrito no código acima e jogo em uma classe EJB @Stateless que implementa uma interface @Remote, simplesmente essa linha de chamada
EntityManager em = emf.createEntityManager();
que acrescentei na classe EJB, de nome por exemplo BaseDAOImpl, simplesmente dá uma exceção NullPointerException no EntityManager pois não conseguiu injetar da mesma forma o PersistenceUnit nessa classe como no exemplo acima.
Gostaria de saber como resolver esse problema?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 13:29:41
|
walyson amaral
Debugger
![[Avatar]](/images/avatar/290b88967c9f0c818100b9cadb7d3c1a.jpg)
Membro desde: 19/12/2008 22:29:30
Mensagens: 50
Offline
|
Tenta fazer assim no seu BaseDAOImpl<T>:
|
walyson amaral
("O essencial é invisível aos olhos") |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/10/2009 13:34:15
|
roanbrasil
JavaChild
Membro desde: 17/12/2007 12:03:50
Mensagens: 104
Localização: Campinas, SP
Offline
|
fiz essa alteração e o erro continua ...
olha o strack trace agora
está no query q o erro
|
|
|
 |
|
|