Erro JPA - Returned null to createEntityManagerFactory

Galera ja pesquisei tudo que achei nos foruns com o mesmo problema e nao resolvi o meu.

Ja importei todos jar’s que tem necessidade, são eles:

mysql-connector-java5.8.0-bin.jar
toplink-essentials-agent.jar
toplink-essentials.jar

ja mudei o caminho da pasta, no momento minha pasta encontra-se no caminho:

D:\WagnerInformação\1CodigoNoNetBeans\SAU\Projeto\SAU\src\META-INF\persistence.xml

Vou postar tb meu persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
  <persistence-unit name="saujavaPU" transaction-type="RESOURCE_LOCAL">
    <provider>oracle.toplink.essentials.PersistenceProvider</provider>
    <class>org.aps.sau.view.UnidadeOrigem</class>
    <properties>
      <property name="toplink.jdbc.user" value="root"/>
      <property name="toplink.jdbc.password" value="123"/>
      <property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/saujava"/>
      <property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
    </properties>
  </persistence-unit>
</persistence>

O erro que esta dando…

Exception in thread "AWT-EventQueue-0" javax.persistence.PersistenceException: No Persistence provider for EntityManager named saujavaPU:  The following providers:
oracle.toplink.essentials.PersistenceProvider
oracle.toplink.essentials.ejb.cmp3.EntityManagerFactoryProvider
Returned null to createEntityManagerFactory.

        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:154)
        at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:83)

Agradeço muito a ajuda pra ver se clareia minhas ideias.
Obrigado

Cara,

você consegui resolver isso??? Estou com o mesmo problema, já pesquisei e não achei nada a respeito.

Valeu!!!

é so colocar o arquivo persistence.xml na pasta META-INF … dentro dos executaveis…

na raiz do projeto, dentro da pasta META-INF coloque o persistence.xml (se tiver usando IDEs, apenas isto resolve, ele ja coloca na pasta certa quando vc compila o projeto)

Lavieri,

estou usando o Eclipse e segui os seguintes passos:

  • criei um Dynamic Web Project com Glassfish v2.1, JSF v1.2 e deixei as pastas WebContent e src padrão conforme sugerido pela IDE;
  • após criado, vou nas propriedades do projeto, na parte de Project Facets e marco a opção para Java Persistence. Feito isso ele cria o persistence.xml e o orm.xml na pasta NOME_DO_PROJETO\src\META-INF;
  • copiei os seguintes .jars para a pasta NOME_DO_PROJETO\WebContente\WEB-INF\lib -> mysql-connector-java-5.1.7-bin.jar, toplink-essentials.jar e toplink-essentials-agent.jar;
  • alterei as configurações do persistence.xml com os dados do banco, etc… ficou quase igual ao citado acima pelo bagaosp;
  • na página .jsp chamo o bean;
  • no bean executo o seguinte código, onde ocorre o erro: EntityManagerFactory emf = Persistence.createEntityManagerFactory([nome_do_persistence-unit]);

já tentei mudar o persistence.xml de lugar (NOME_DO_PROJETO\META-INF\persistence.xml), mas ai sim não acha o arquivo persistence.xml, pois retorna o seguinte erro: No META-INF/persistence.xml was found in classpath.

Alguma idéia?

Valeu!

Posta seu JPAUitl se puder.

Provavelmente o nome que vc esta passando como argumento pro EnityManager, não é o mesmo que está no Xml.
Caso estejam corretos os nomes, tenta mudar o nome do unit que está no xml, e vê oq acontece no stacktrace.

Leandronsp,

copiei os .jar´s para a pasta lib do glassfish e após algumas dicas de um amigo, funcionou perfeitamente.

mesmo assim, mto obrigado pela força!

Junior