Problema ao executar um MB na JPA
Bom dia, andei assistindo as video-aulas do Dyego, e ao tentar executar a pagina para listar todos os "products", apareceu o seguinte erro:
java.lang.ClassNotFoundException: javax.persistence.Persistence.
aqui vai minha JPAUtil
package br.com.loja.util;
import java.io.Serializable;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
public class JPAUtil {
private static JPAUtil me;
private EntityManagerFactory emf;
private JPAUtil() {
emf = Persistence.createEntityManagerFactory("bancoLocal");
}
public static JPAUtil getInstance() {
if (me == null) {
me = new JPAUtil();
}
return me;
}
public EntityManager getEntityManager() {
EntityManager toReturn = emf.createEntityManager();
toReturn.getTransaction().begin();
return toReturn;
}
@SuppressWarnings("unchecked")
public <T> List<T> getList(Class<T> classToCast, String jpql,
Object... parameters) {
List toReturn = null;
EntityManager em = getEntityManager();
Query qr = em.createQuery(jpql);
for (int i = 0; i < parameters.length; i++) {
qr.setParameter(i + 1, parameters[i]);
}
toReturn = qr.getResultList();
em.getTransaction().commit();
em.close();
return toReturn;
}
public <T> T getEntity(Class<T> entityClass, Serializable pk) {
EntityManager em = getEntityManager();
T toReturn = em.find(entityClass, pk);
em.getTransaction().commit();
em.close();
return toReturn;
}
}
e da erro nessa linha:
emf = Persistence.createEntityManagerFactory("bancoLocal");
Detalhe, eu rodei no debbug, e ele me retorna o emf NULL.
Alguém poderia me ajudar?
java.lang.ClassNotFoundException: javax.persistence.Persistence.
aqui vai minha JPAUtil
package br.com.loja.util;
import java.io.Serializable;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
public class JPAUtil {
private static JPAUtil me;
private EntityManagerFactory emf;
private JPAUtil() {
emf = Persistence.createEntityManagerFactory("bancoLocal");
}
public static JPAUtil getInstance() {
if (me == null) {
me = new JPAUtil();
}
return me;
}
public EntityManager getEntityManager() {
EntityManager toReturn = emf.createEntityManager();
toReturn.getTransaction().begin();
return toReturn;
}
@SuppressWarnings("unchecked")
public <T> List<T> getList(Class<T> classToCast, String jpql,
Object... parameters) {
List toReturn = null;
EntityManager em = getEntityManager();
Query qr = em.createQuery(jpql);
for (int i = 0; i < parameters.length; i++) {
qr.setParameter(i + 1, parameters[i]);
}
toReturn = qr.getResultList();
em.getTransaction().commit();
em.close();
return toReturn;
}
public <T> T getEntity(Class<T> entityClass, Serializable pk) {
EntityManager em = getEntityManager();
T toReturn = em.find(entityClass, pk);
em.getTransaction().commit();
em.close();
return toReturn;
}
}
e da erro nessa linha:
emf = Persistence.createEntityManagerFactory("bancoLocal");
Detalhe, eu rodei no debbug, e ele me retorna o emf NULL.
Alguém poderia me ajudar?
Euclides Filizola
Curtidas 0
Respostas
Henrique Weissmann
31/08/2009
Olá,
o problema ocorreu porque o JAR que contém as classes referentes ao JPA não foi distribuido junto com a sua aplicação:
Como consequência, a classe javax.persistence.Persistence não foi encontrada, gerando a excessão abaixo:
java.lang.ClassNotFoundException: javax.persistence.Persistence.
Verifique os jars disponibilizados com seu sistema e tente novamente. Esta excessão irá desaparecer.
GOSTEI 0
Euclides Filizola
31/08/2009
aqui está o meu erro:
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoClassDefFoundError: javax/persistence/Persistence
br.com.loja.util.JPAUtil.<init>(JPAUtil.java:19)
br.com.loja.util.JPAUtil.getInstance(JPAUtil.java:25)
br.com.loja.dao.ProductDAO.getAllProducts(ProductDAO.java:45)
br.com.loja.ManagedBean.ProductMB.<init>(ProductMB.java:14)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
java.lang.reflect.Constructor.newInstance(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:277)
com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:531)
com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
org.apache.el.parser.AstValue.getValue(AstValue.java:103)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
javax.faces.component.UIData.getValue(UIData.java:582)
javax.faces.component.UIData.getDataModel(UIData.java:1063)
javax.faces.component.UIData.setRowIndex(UIData.java:417)
com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:85)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:785)
javax.faces.component.UIData.encodeBegin(UIData.java:879)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
root cause
java.lang.ClassNotFoundException: javax.persistence.Persistence
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
br.com.loja.util.JPAUtil.<init>(JPAUtil.java:19)
br.com.loja.util.JPAUtil.getInstance(JPAUtil.java:25)
br.com.loja.dao.ProductDAO.getAllProducts(ProductDAO.java:45)
br.com.loja.ManagedBean.ProductMB.<init>(ProductMB.java:14)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
java.lang.reflect.Constructor.newInstance(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:277)
com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:531)
com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
org.apache.el.parser.AstValue.getValue(AstValue.java:103)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
javax.faces.component.UIData.getValue(UIData.java:582)
javax.faces.component.UIData.getDataModel(UIData.java:1063)
javax.faces.component.UIData.setRowIndex(UIData.java:417)
com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:85)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:785)
javax.faces.component.UIData.encodeBegin(UIData.java:879)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.
. aqui estão todas os meus jars instalados:
ejb3-persistence.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-validator.jar
jboss-archive-browsing.jar
ehcache-1.3.0.jar
hibernate-entitymanager.jar
antlr-2.7.6.jar
asm.jar
asm-attrs.jar
c3p0-0.9.1.2.jar
cglib-2.1.3.jar
cglib-nodep-2.1.3.jar
commons-collections-2.1.1.jar
commons-logging-1.0.4.jar
dom4j-1.6.1.jar
hibernate3.jar
javassist.jar
jta.jar
log4j-1.2.11.jar
asm-2.2.3.jar
asm-commons-2.2.3.jar
asm-util-2.2.3.jar
....
HTTP Status 500 -
--------------------------------------------------------------------------------
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoClassDefFoundError: javax/persistence/Persistence
br.com.loja.util.JPAUtil.<init>(JPAUtil.java:19)
br.com.loja.util.JPAUtil.getInstance(JPAUtil.java:25)
br.com.loja.dao.ProductDAO.getAllProducts(ProductDAO.java:45)
br.com.loja.ManagedBean.ProductMB.<init>(ProductMB.java:14)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
java.lang.reflect.Constructor.newInstance(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:277)
com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:531)
com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
org.apache.el.parser.AstValue.getValue(AstValue.java:103)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
javax.faces.component.UIData.getValue(UIData.java:582)
javax.faces.component.UIData.getDataModel(UIData.java:1063)
javax.faces.component.UIData.setRowIndex(UIData.java:417)
com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:85)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:785)
javax.faces.component.UIData.encodeBegin(UIData.java:879)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
root cause
java.lang.ClassNotFoundException: javax.persistence.Persistence
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1360)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1206)
java.lang.ClassLoader.loadClassInternal(Unknown Source)
br.com.loja.util.JPAUtil.<init>(JPAUtil.java:19)
br.com.loja.util.JPAUtil.getInstance(JPAUtil.java:25)
br.com.loja.dao.ProductDAO.getAllProducts(ProductDAO.java:45)
br.com.loja.ManagedBean.ProductMB.<init>(ProductMB.java:14)
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
java.lang.reflect.Constructor.newInstance(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:277)
com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:531)
com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
org.apache.el.parser.AstValue.getValue(AstValue.java:103)
org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
javax.faces.component.UIData.getValue(UIData.java:582)
javax.faces.component.UIData.getDataModel(UIData.java:1063)
javax.faces.component.UIData.setRowIndex(UIData.java:417)
com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:85)
javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:785)
javax.faces.component.UIData.encodeBegin(UIData.java:879)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.16 logs.
. aqui estão todas os meus jars instalados:
ejb3-persistence.jar
hibernate-annotations.jar
hibernate-commons-annotations.jar
hibernate-validator.jar
jboss-archive-browsing.jar
ehcache-1.3.0.jar
hibernate-entitymanager.jar
antlr-2.7.6.jar
asm.jar
asm-attrs.jar
c3p0-0.9.1.2.jar
cglib-2.1.3.jar
cglib-nodep-2.1.3.jar
commons-collections-2.1.1.jar
commons-logging-1.0.4.jar
dom4j-1.6.1.jar
hibernate3.jar
javassist.jar
jta.jar
log4j-1.2.11.jar
asm-2.2.3.jar
asm-commons-2.2.3.jar
asm-util-2.2.3.jar
....
GOSTEI 0
Henrique Weissmann
31/08/2009
Se não me engano, o nome do jar que está faltando é jpa.jar.
Neste jar se encontram as interfaces definidas para esta JSR.
Você também terá de fornecer os jars da implementação do Hibernate referentes ao padrão JPA.
GOSTEI 0
Euclides Filizola
31/08/2009
Baixei o jpa.jar, coloquei as libs que estavam faltando....
continua o mesmo erro.. !
continua o mesmo erro.. !
GOSTEI 0
Henrique Weissmann
31/08/2009
Você está incluindo os jars necessários no arquivo .war que será enviado ao seu servidor de aplicações?
Faça o seguinte teste: uma vez gerado o seu arquivo .war, abra-o com um software extrator como FilZip, Winzip ou qualquer outro e verifique se no diretório WEB-INF/libs presentes no arquivo se encontram os arquivos que você incluiu.
Caso não estejam presentes, pode ser que estejam disponíveis para a sua IDE, porém esta esteja configurada para não incluir estes arquivos no pacote war a ser gerado.
GOSTEI 0
Euclides Filizola
31/08/2009
eu ainda não terminei o projeto. Por isso não coloquei num arquivo *.war. Agora aconteceu um detalhe, eu coloquei o jpa.jar para rodar dentro do servidor, ou seja, dentro das libs do tomcat, dae ele me retornou outro erro agora. Quando eu rodo a aplicação, me retorna o seguinte erro:
31/08/2009 11:40:56 com.sun.faces.application.ApplicationAssociate createAndMaybeStoreManagedBeans
SEVERE: JSF1001: Managedbean productMB could not be created.
31/08/2009 11:40:56 com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/pages/listProducts.xhtml]
javax.faces.FacesException: javax.faces.FacesException: Cant instantiate class: br.com.loja.ManagedBean.ProductMB.. No Persistence provider for EntityManager named conexao
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:541)
at com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
at org.apache.el.parser.AstValue.getValue(AstValue.java:103)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
at javax.faces.component.UIData.getValue(UIData.java:582)
at javax.faces.component.UIData.getDataModel(UIData.java:1063)
at javax.faces.component.UIData.setRowIndex(UIData.java:417)
at com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:85)
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:785)
at javax.faces.component.UIData.encodeBegin(UIData.java:879)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.faces.FacesException: Cant instantiate class: br.com.loja.ManagedBean.ProductMB.. No Persistence provider for EntityManager named conexao
at com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:282)
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:531)
... 35 more
Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named conexao
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:89)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:60)
at br.com.loja.util.JPAUtil.<init>(JPAUtil.java:19)
at br.com.loja.util.JPAUtil.getInstance(JPAUtil.java:25)
at br.com.loja.dao.ProductDAO.getAllProducts(ProductDAO.java:45)
at br.com.loja.ManagedBean.ProductMB.<init>(ProductMB.java:14)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:277)
... 36 more
31/08/2009 11:40:56 com.sun.faces.application.ApplicationAssociate createAndMaybeStoreManagedBeans
SEVERE: JSF1001: Managedbean productMB could not be created.
e dentro do meu projeto, dentro de src, eu tenho uma pasta chamada META-INF, que contém o persistence.xml
detalhe, eu testo todos os meus DAO's, utilizando o JUnit Test, e funcionam beleza, todos passam OK.
31/08/2009 11:40:56 com.sun.faces.application.ApplicationAssociate createAndMaybeStoreManagedBeans
SEVERE: JSF1001: Managedbean productMB could not be created.
31/08/2009 11:40:56 com.sun.facelets.FaceletViewHandler handleRenderException
SEVERE: Error Rendering View[/pages/listProducts.xhtml]
javax.faces.FacesException: javax.faces.FacesException: Cant instantiate class: br.com.loja.ManagedBean.ProductMB.. No Persistence provider for EntityManager named conexao
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:541)
at com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:82)
at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53)
at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:64)
at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:61)
at org.apache.el.parser.AstValue.getValue(AstValue.java:103)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)
at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:71)
at javax.faces.component.UIData.getValue(UIData.java:582)
at javax.faces.component.UIData.getDataModel(UIData.java:1063)
at javax.faces.component.UIData.setRowIndex(UIData.java:417)
at com.sun.faces.renderkit.html_basic.TableRenderer.encodeBegin(TableRenderer.java:85)
at javax.faces.component.UIComponentBase.encodeBegin(UIComponentBase.java:785)
at javax.faces.component.UIData.encodeBegin(UIData.java:879)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:884)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:137)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:809)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:886)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:892)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:251)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:144)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:245)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.faces.FacesException: Cant instantiate class: br.com.loja.ManagedBean.ProductMB.. No Persistence provider for EntityManager named conexao
at com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:282)
at com.sun.faces.application.ApplicationAssociate.createAndMaybeStoreManagedBeans(ApplicationAssociate.java:531)
... 35 more
Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named conexao
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:89)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:60)
at br.com.loja.util.JPAUtil.<init>(JPAUtil.java:19)
at br.com.loja.util.JPAUtil.getInstance(JPAUtil.java:25)
at br.com.loja.dao.ProductDAO.getAllProducts(ProductDAO.java:45)
at br.com.loja.ManagedBean.ProductMB.<init>(ProductMB.java:14)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at com.sun.faces.config.ManagedBeanFactoryImpl.newInstance(ManagedBeanFactoryImpl.java:277)
... 36 more
31/08/2009 11:40:56 com.sun.faces.application.ApplicationAssociate createAndMaybeStoreManagedBeans
SEVERE: JSF1001: Managedbean productMB could not be created.
e dentro do meu projeto, dentro de src, eu tenho uma pasta chamada META-INF, que contém o persistence.xml
detalhe, eu testo todos os meus DAO's, utilizando o JUnit Test, e funcionam beleza, todos passam OK.
GOSTEI 0
Euclides Filizola
31/08/2009
e ae...
nada ?
nada ?
GOSTEI 0
Henrique Weissmann
31/08/2009
Euclides,
já vi isto acontecer algumas vezes: o problema normalmente consiste no fato do class loader do container de aplicações ser customizado.
Visto que você precisa carregar as configurações do JPA que se encontram dentro do arquivo persistence.xml, provavelmente está carregando o arquivo como recurso (chamando o método Class.getResourceAsStream("endereço").
Sugestão: coloque o arquivo persistence.xml dentro dos pacotes da sua classe, e não dentro do diretório WEB-INF. E ao carregá-lo, carregue-o chamando o método getClass().getClassLoader().getResourceAsStream("caminho para o arquivo.xml")
GOSTEI 0
Euclides Filizola
31/08/2009
Meu arquivo persistence.xml está dentro de SRC\META-INF. Não entendi a tua chamada, pois eu chamo o persistence, através de um entityManagerFactory.
emf = Persistence.createEntityManagerFactory("bancoLocal");
é assim que chamo.
emf = Persistence.createEntityManagerFactory("bancoLocal");
é assim que chamo.
GOSTEI 0
Euclides Filizola
31/08/2009
e ae , nada ?
GOSTEI 0
Dyego Carmo
31/08/2009
Olá !
Tudo bem ?
Procure em todo o seu codigo fonte o nome "conexao" e cole aqui os trechos que esta utilizando ele por favor...
Ou zipe seu codigo fonte e envie para que eu consiga dar uma olhada :)
Tudo bem ?
Procure em todo o seu codigo fonte o nome "conexao" e cole aqui os trechos que esta utilizando ele por favor...
Ou zipe seu codigo fonte e envie para que eu consiga dar uma olhada :)
GOSTEI 0
Euclides Filizola
31/08/2009
Olá Dyego, agradeço a atenção. Mas já resolvi meu problema por si só. Era apenas as bibliotecas do hibernate, que estavam em versões de incompatibilidades, ou seja, de acordo com aquela tabela que possui no site hibernate.org. Assim sendo, retirei todas as libs, e fui colocando uma por uma. E então aqui ficaram as libs que estou utilizando:
antlr-2.7.6
c3p0-0.9.1
cglib-2.2
common-annotations
commons-beanutils
commons-collections-3.1
commons-digester
commons-logging
dom4j-1.6.1
ejb3-persistence
hibernate3
hibernate-annotations
hibernate-commons-annotations
hibernate-entitymanager
hibernate-validator
javassist-3.9.0.GA
jsf-facelets
jsf-tlds
jstl
jta-1.1
log4j
postgresql-8.3dev-601.jdbc4
slf4j-api-1.5.8
slf4j-log4j12
standard
Agradeço a atenção
Abraços.
antlr-2.7.6
c3p0-0.9.1
cglib-2.2
common-annotations
commons-beanutils
commons-collections-3.1
commons-digester
commons-logging
dom4j-1.6.1
ejb3-persistence
hibernate3
hibernate-annotations
hibernate-commons-annotations
hibernate-entitymanager
hibernate-validator
javassist-3.9.0.GA
jsf-facelets
jsf-tlds
jstl
jta-1.1
log4j
postgresql-8.3dev-601.jdbc4
slf4j-api-1.5.8
slf4j-log4j12
standard
Agradeço a atenção
Abraços.
GOSTEI 0
Dyego Carmo
31/08/2009
OK ,
Estou marcando este chamado como concluído.
Qualquer coisa me avise !
Estou marcando este chamado como concluído.
Qualquer coisa me avise !
GOSTEI 0