[RESOLVIDO] Erro ao usar o Entity Manager do JPA Hibernate

3 respostas Resolvido
java
V

Pastas do Meu Projeto

A classe Login :

package br.com.petfinder.login;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table(name="Login")
public class Login{
	
	@Id
	@GeneratedValue
	String id;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}
}

A Classe: GeraTabelas

package br.com.petfinder.login;

import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

public class GeraTabelas {
	public static void main(String[] args) {
		EntityManagerFactory factory = Persistence.createEntityManagerFactory("Login");
		factory.close();
	}
}

O persistence.xml

<persistence 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_2_0.xsd"
    version="2.0">

	<persistence-unit name="Login">
		<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
		<class>br.com.petfinder.login.Login</class>
		
		<properties>
			<!-- dados da conexao -->
			<property name="javax.persistence.jdbc.driver" value="com.oracle.jdbc.Driver" />
			<property name="javax.persistence.jdbc.url" value="jdbc:oracle://localhost/petfinder" />
			<property name="javax.persistence.jdbc.user" value="PET_ADMIN" />
			<property name="javax.persistence.jdbc.password" value="PET_ADMIN" />
			<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5InnoDBDialect" />
			<property name="hibernate.show_sql" value="true" />
			<property name="hibernate.format_sql" value="true" />
			<property name="hibernate.hbm2ddl.auto" value="update" />   
		</properties>
	</persistence-unit>
</persistence>

Mensagem de erro

Exception in thread "main" javax.persistence.PersistenceException: No Persistence provider for EntityManager named Login
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:61)
	at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:39)
	at br.com.petfinder.login.GeraTabelas.main(GeraTabelas.java:16)

3 Respostas

D
Solucao aceita

No seu persistence.xml , esta faltando isso :

<persistence-unit name="Login" transaction-type="RESOURCE_LOCAL">

L

Se o post do Daniel_Dias não funcionar. Faça assim: Cria a pasta META-INF na pasta SRC e coloque o persistence.xml dentro dela e teste novamente.

V

Fiz os dois procedimentos, funcionou perfeitamente… Obrigadooooooooo

Criado 22 de junho de 2016
Ultima resposta 22 de jun. de 2016
Respostas 3
Participantes 3