Injection de EntityManger  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Pessoal, Bom dia.

Sei que tem vários tópios a respeito do assunto, porém não consegui uma solução para o meu problema.


Estou com problema na injeção da instancia do entityManager nos ManagedBeans através do @PersistnceContext.


Persistence.xml



UsuarioBean.java






Juliano Vieira Nicocelli
[MSN]
Jair Rillo Junior
Moderador
[Avatar]

Membro desde: 29/04/2003 21:19:53
Mensagens: 2524
Localização: São Paulo / Campinas
Offline

Em qual container você está testando? Qual a versão do JSF?

Pelo que eu me lembre, a injeção só só irá funcionar em um container EJB (JBoss, glassfish, Websphere, etc). Caso seja um Tomcat, não irá funcionar.

Jair Rillo Junior

http://www.jairrillo.com/blog | Twitter | SCJA, SCJP, SCWCD, SCBCD, IBM SOA Associate
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline



JSF 2.0 e Tomcat 7 .

Então ta explicado porque não funciona!!

Mais então, há alguma solução para fazer a injeção no Tomcat?

Juliano Vieira Nicocelli
[MSN]
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Jair, Obrigado pela ajuda.....


Vou configurar o JBoss aqui e testar.

Juliano Vieira Nicocelli
[MSN]
alissonvla
GUJ Master

Membro desde: 17/04/2006 15:29:07
Mensagens: 1491
Offline

cara,

tem jeito sim usar Tomcat 7, para injetar o EntityManager, so que vai ter que usar EJB 3.1 ou Spring.

t+
jakefrog
GUJ Expert
[Avatar]

Membro desde: 22/01/2007 22:00:53
Mensagens: 4191
Online

Bem, ter jeito tem mas vc vai quebrar MVC ou DDD caso você esteja utilizando alguma coisa.

Pq você não injeta seu EntityManager em um DAO Stateless e aí sim, seu MB tem o DAO injetado? [=

Meu blog sobre java uaiHebert.com
Conceitos OO - Diga, não pergunte!, Lei de Demeter
TDD Primeiros Passos, JUnit com HSQLDB, JPA e Hibernate, Cobertura de testes com JUnit Ant e Emma, Cobrindo seus testes com Cobertura, JUnit, HSQLDB, JPA
Código Limpo: Partes: 01,02,03,04,05
Web/JSF - Criando um WebServer, Tratando Exceções, Autenticação de Usuários (Filter/Servlet), JSF - Hello World, AutoComplete, JSF: Converter e Bean Auto Complete, Validação de Login de Usuário com JSF e JAAS, JSF Exibindo Objeto e Mensagens após Redirect, JSF Exemplos Simples com Ajax, JSF Parametros por Get Request RESTFullAplicação Web Completa JSF EJB JPA JAAS, Lazy JSF Datatable Pagination (Primefaces)
Design Pattern - Strategy, Design Pattern - Observer (Parte 01), Design Pattern - Observer (Parte 02)
Business (JPA)- Hibernate 3 com JPA 2, Create schema script: Ant, Hibernate 3 e JPA 2, TableGenerator Chave Primária Simples, SequenceGenerator,Chave Primária Composta, Mapeando Datas (Date) e Enum, Mapeando Duas Tabelas em uma Classe, @OneToOne Unidirecional e Bidirecional, @OneToMany e @ManyToOne Unidirecional e Bidirecional, @ManyToMany Unidirecional e Bidirecional, Ordernando listas e utilizando Map como atributo mapeado,Uma tabela por herança, JPA Uma Classe por Sub-Classe, JPA Consultas e Dicas, [HOT]Quatro soluções para LazyInitializationException[HOT]

SCJP(1.6 - Ingles - 29/12/2009)
SCWCD(1.5 - Ingles - 30/06/2010)

Vamos em frente que atrás vem gente!
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Bom, agora estou aqui quebrando a cabeça para configurar o JBOSs....

Esta dando o seguinte erro

Mais assim que eu conseguir resolver esse problema eu posto o resultado.

Juliano Vieira Nicocelli
[MSN]
Jair Rillo Junior
Moderador
[Avatar]

Membro desde: 29/04/2003 21:19:53
Mensagens: 2524
Localização: São Paulo / Campinas
Offline

Agora você está utilizando outro persistence.xml? Porque agora ele está buscando a conexão no DataSource no JBoss.

Duas uma:
- Ou configura o persistence.xml para não usar o DS
- Configura um DS no JBoss

Jair Rillo Junior

http://www.jairrillo.com/blog | Twitter | SCJA, SCJP, SCWCD, SCBCD, IBM SOA Associate
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Bom dia....

Jair, eu configurei o persistence.xml para usar o DS, porém ainda está ocorrendo um erro.

Por favor, confere se o meu persistence.xml está correto. Segue abaixo:


Abaixo o arquivo DS:



O erro....


Juliano Vieira Nicocelli
[MSN]
Jair Rillo Junior
Moderador
[Avatar]

Membro desde: 29/04/2003 21:19:53
Mensagens: 2524
Localização: São Paulo / Campinas
Offline

Olha na classe que você importou o EntityManager e tenha certeza que está usando o EntityManager da JPA
Pacote: javax.persistence

Jair Rillo Junior

http://www.jairrillo.com/blog | Twitter | SCJA, SCJP, SCWCD, SCBCD, IBM SOA Associate
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Os imports estão corretos.

Estou achando que é algum problema referente as libs que estou usando no meu projeto x Jboss.


Tem um post aqui no guj com o mesmo problema http://www.guj.com.br/java/101103-erro-em-jboss

Juliano Vieira Nicocelli
[MSN]
Jair Rillo Junior
Moderador
[Avatar]

Membro desde: 29/04/2003 21:19:53
Mensagens: 2524
Localização: São Paulo / Campinas
Offline

Dá uma procurada no google sobre esse defeito. joga a string "java.lang.ClassCastException: org.hibernate.ejb.HibernatePersistence cannot be cast to javax.persistence.spi.PersistenceProvider " no search.

Tem bastante gente falando desse problema justamente com o JBoss...

Jair Rillo Junior

http://www.jairrillo.com/blog | Twitter | SCJA, SCJP, SCWCD, SCBCD, IBM SOA Associate
jakefrog
GUJ Expert
[Avatar]

Membro desde: 22/01/2007 22:00:53
Mensagens: 4191
Online

Cara, isso pode ser conflito.

Você adicionou biblioteca em seu projeto sem ser as do JBoss?

Meu blog sobre java uaiHebert.com
Conceitos OO - Diga, não pergunte!, Lei de Demeter
TDD Primeiros Passos, JUnit com HSQLDB, JPA e Hibernate, Cobertura de testes com JUnit Ant e Emma, Cobrindo seus testes com Cobertura, JUnit, HSQLDB, JPA
Código Limpo: Partes: 01,02,03,04,05
Web/JSF - Criando um WebServer, Tratando Exceções, Autenticação de Usuários (Filter/Servlet), JSF - Hello World, AutoComplete, JSF: Converter e Bean Auto Complete, Validação de Login de Usuário com JSF e JAAS, JSF Exibindo Objeto e Mensagens após Redirect, JSF Exemplos Simples com Ajax, JSF Parametros por Get Request RESTFullAplicação Web Completa JSF EJB JPA JAAS, Lazy JSF Datatable Pagination (Primefaces)
Design Pattern - Strategy, Design Pattern - Observer (Parte 01), Design Pattern - Observer (Parte 02)
Business (JPA)- Hibernate 3 com JPA 2, Create schema script: Ant, Hibernate 3 e JPA 2, TableGenerator Chave Primária Simples, SequenceGenerator,Chave Primária Composta, Mapeando Datas (Date) e Enum, Mapeando Duas Tabelas em uma Classe, @OneToOne Unidirecional e Bidirecional, @OneToMany e @ManyToOne Unidirecional e Bidirecional, @ManyToMany Unidirecional e Bidirecional, Ordernando listas e utilizando Map como atributo mapeado,Uma tabela por herança, JPA Uma Classe por Sub-Classe, JPA Consultas e Dicas, [HOT]Quatro soluções para LazyInitializationException[HOT]

SCJP(1.6 - Ingles - 29/12/2009)
SCWCD(1.5 - Ingles - 30/06/2010)

Vamos em frente que atrás vem gente!
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Tinha algumas libs do hibernaite porem eu removi do projeto.

Agora ainda tenho no projeto as libs:

c3p0-0.9.1.jar
cssparser-0.9.5.jar
ehcache-1.5.0.jar
guava-r06.jar
jsf-api.jar
jsf-facelets.jar
jsf-impl.jar
log4j-1.2.15.jar
mysql-connector-java-5.0.8-bin.jar
servlet-api.jar
slf4j-api-1.5.8.jar
slf4j-log4j12-1.5.8.jar
standard.jar


Você acha que alguma das libs pode estar conflitando com as do Jboss?

Juliano Vieira Nicocelli
[MSN]
nicocelli
JavaChild
[Avatar]

Membro desde: 06/06/2011 08:48:38
Mensagens: 122
Localização: SC
Offline

Removi todas as libs de WEB-INF/lib e mesmo assim ocorreu o problema.



Estou pensando em voltar com o tomcat e fazer da forma que você mencionou abaixo:

jakefrog wrote:Bem, ter jeito tem mas vc vai quebrar MVC ou DDD caso você esteja utilizando alguma coisa.

Pq você não injeta seu EntityManager em um DAO Stateless e aí sim, seu MB tem o DAO injetado? [=



Juliano Vieira Nicocelli
[MSN]
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team