[b]Oi Pessoal,
Estou com um probleminha (?) para executar minha pequena aplicação de cadastro que fiz usando netbeans 7.0.
Parece que a mensagem de erro mostra que falta um provider para ser criado o EntityManager, eu não tenho
idéia de como fazer isso. Só utilizei a Interface Swing pra criar no NetBeans tudo. Consegui colocar um BD MySql no projeto mas,
não sei como codificar isso…se puderem lançar uma Luz, agradeço muitíssimo!
Abraços! [/b] :roll: 
[code]run:
19/12/2011 22:59:45 org.jdesktop.application.Application$1 run
GRAVE: Application class membrosdb.MembrosDBApp failed to launch
javax.persistence.PersistenceException: No Persistence provider for EntityManager named mysqlPU: 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)
at membrosdb.MembrosDBView.initComponents(MembrosDBView.java:339)
at membrosdb.MembrosDBView.<init>(MembrosDBView.java:36)
at membrosdb.MembrosDBApp.startup(MembrosDBApp.java:19)
at org.jdesktop.application.Application$1.run(Application.java:171)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:641)
at java.awt.EventQueue.access$000(EventQueue.java:84)
at java.awt.EventQueue$1.run(EventQueue.java:602)
at java.awt.EventQueue$1.run(EventQueue.java:600)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:611)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Exception in thread “AWT-EventQueue-0” java.lang.Error: Application class membrosdb.MembrosDBApp failed to launch
at org.jdesktop.application.Application$1.run(Application.java:177)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:641)
at java.awt.EventQueue.access$000(EventQueue.java:84)
at java.awt.EventQueue$1.run(EventQueue.java:602)
at java.awt.EventQueue$1.run(EventQueue.java:600)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:611)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: javax.persistence.PersistenceException: No Persistence provider for EntityManager named mysqlPU: 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)
at membrosdb.MembrosDBView.initComponents(MembrosDBView.java:339)
at membrosdb.MembrosDBView.<init>(MembrosDBView.java:36)
at membrosdb.MembrosDBApp.startup(MembrosDBApp.java:19)
at org.jdesktop.application.Application$1.run(Application.java:171)
... 14 more
CONSTRUÍDO COM SUCESSO (tempo total: 14 segundos)[/code]
Amigo abra o persistence.xml. La tem a tag que é onde voce deve fornecer a sua implementacao da JPA. Para o hibernate por exemplo se nao me engano é org.hibernate.ejb.hibernatepersistence
Se tiver usando outra implementacao vai ter que olhar na documentacao.
edit 1: Aparentemente voce esta usando top link. Dessa maneira voce deve se certificar que as libs estao no classpatch do seu projeto.
edit 2: Se voce esta usando o netbeans e nao configurou nada provavelmente ele deve ter adicionado as bibliotecas pra voce. Olha se tem essas 4 libs no seu projeto:
toplink-essetials.jar
toplink-essentials-agent.jar
eclipselink-2.0.0.jar
eclipselink-javax-persistence-2.0.jar
Se estiverem todas nas suas bibliotecas entao acho que voce vai ter que postar seu persistence.xml pra gente ver. Fica dentro do pacote META-INF no netbeans. Apesar de eu ter quase certeza que esse problema é de falta de biblioteca mesmo…alguma dessas 4.
Caro Carlos,
Ótimas explicações! Obrigado, farei a verificação assim que estiver em casa e retorno
para comentarmos…abraços! 
Caro Carlos,
Olhei no projeto que chamei MembrosDB em Bibliotecas no Netbeans, que
toplink-essetials.jar
toplink-essentials-agent.jar
estão presentes. Não encontrei:
eclipselink-2.0.0.jar
eclipselink-javax-persistence-2.0.jar
e por que devo te-los se uso o NetBeans e não o Eclipse?
O Provider parece que está preenchido normal, vou postar o XML pra vc ver:
<?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="mysqlPU" transaction-type="RESOURCE_LOCAL">
<provider>oracle.toplink.essentials.PersistenceProvider</provider>
<class>membrosdb.User</class>
<properties>
<property name="toplink.jdbc.user" value="root"/>
<property name="toplink.jdbc.password" value="admin"/>
<property name="toplink.jdbc.url" value="jdbc:mysql://localhost:3306/mysql"/>
<property name="toplink.jdbc.driver" value="com.mysql.jdbc.Driver"/>
</properties>
</persistence-unit>
</persistence>
No aguardo de suas preciosas orientações para continuar, Obrigado até aqui… :idea:
Abraços!
Além do provider, creio que seu caps lock também esteja com problemas.
Por favor, desligue-o ao postar tópicos ou títulos de tópicos.
Não tem porque querer chamar mais a atenção do que os outros.
Nao amigo. Voce deve ter as 4.
eclipselink-2.0.0.jar
eclipselink-javax-persistence-2.0.jar
Tambem devem estar la.
Nao tem nada a ver com a sua IDE. Eclipselink é a versao “free” do toplink. Nao vou entrar em muitos detalhes mas o fato é que a Oracle doou os fontes de uma das versoes do TopLink pra fundacao Eclipse por isso essa divergencia nos nomes mas entenda que nao tem nada a ver com IDE.
No netbeans voce pode procurar por essas bibliotecas que elas devem estar la por padrao. Coloque em bibliotecas > botao direito > adicionar bibliotecas. La voce vai ter uma lista de bibliotecas que estao disponiveis por padrao. Adicione EclipseLink(JPA 2) ou coisa parecida que ele ira adicionar essas duas ao seu classpatch.
Carlos Obrigado pelas dicas e informações , verificarei…
Abraço.
[b]CARO CARLOS,
SEGUI SEUS CONSELHOS. REALMENTE CONSEGUI ADICIONAR AS BIBLIOTECAS FALTANTES MAS,
O PROBLEMA CONTINUA, NÃO CONSIGO EXECUTAR A APLICAÇÃO…
OBRIGADO PELA AJUDA![/b] :roll:
Amigo pode ate nao estar rodando mas que esse era UM DOS problemas isso era. Fiz testes aqui e sem qualquer das 4 libs uma aplicacao com toplink nao funciona nem a pau.
ps: voce vai acabar levando ban por escrever em caixa alta mesmo depois de ter sido avisado.
[b]Carlos,
Obrigado pelas dicas, seguirei com as descobertas. Sobre o Caps, não fui avisado, fui IRONIZADO é diferente…
NÃO LEVO EM CONTA IRONIAS, NÃO RESPONDO A QUEM NÃO TEM CAPACIDADE SEQUER PRA FALAR COM OS OUTROS…
(VOCE PODE DIZER A COISA CERTA DA MANEIRA ERRADA!)
ABRAÇOS CARLOS E ATÉ MAIS![/b] :idea:
Olá Bruce Wayne.
Por favor, pare de usar o caps lock. Caso contrário, iremos trancar seus tópicos.
Se quiser gritar, grite em sua casa.
Não se preocupe JÁ INFORMEI A ADMINISTRAÇÃO DO GUJ os seus maus procedimentos aqui para comigo.
Vc deve ser uma dessas pessoas que não tem o minimo de educação para falar com os outros. Deve ser
coisa de berço. Uma coisa é pedir E SABER PEDIR, OU LEMBRAR E SABER COMO FAZE-LO, OUTRA COISA
É IRONIZAR E GRITAR COM OS OUTROS. VAI GRITAR COM SEUS FILHOS, demente, indio, selvagem, animal (IBAMA E FUNAI que me desculpem a ofensa)!
Não se dirija a minha pessoa de novo pois, gente do seu nível não merece minha atenção!
Rapaz, acho que você está um tanto alterado demais.
Eu nem sequer gritei com você.
Na Internet, usar letras maiúsculas é que é considerado grito.
Você tem certeza que minhas mensagens são motivo para tanto?
Em todo caso, acho que vale muito a pena você ler a seguinte página, que explica como funciona a conduta em fóruns de maneira geral:
http://www.istf.com.br/perguntas/
Especial atenção nos tópicos “Escreva de modo claro, gramatical e sintaticamente correto”, “Lidando com grosserias” e “Não reaja como um otário”.
Vini,
Desculpas, sinto muito, mas, o que não gostei foi da Ironia e forma de falar comigo,
coloquei minha conta a disposição da Administração e prestei
meus agradecimentos a eles e todos por email…
se puder apague meu tópico anterior …retiro o que disse…abraços …lerei com
calma depois sua indicação…valeu!
Desculpe também, minha intenção não era te ofender ou ser irônico, mas relendo vi que soou assim.