1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Hibernate não cria a tabela no banco erro de persistência

Gerei os seguintes códigos abaixo em Java(JSF) para criar e gravar as tabela no banco de dados; Ao compilar o apresenta erro na classe EntityManageUtil. Alguém poderia me auxiliar, por favor? Obrigado! classe Grupo:

import java.io.Serializable;

import javax.annotation.Generated;
import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

import org.hibernate.annotations.Index;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotEmpty;

@Entity
@Table(name="GRUPO")
public class Grupo implements Serializable{
    @Id
    @Column(name="ID")
    @SequenceGenerator(name="SEQ_GRUPO", sequenceName="SEQ_GRUPO_ID", 
            allocationSize=1)
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator="SEQ_GRUPO")
    private Integer id;
    @NotEmpty(message="O nome não pode ser nulo")
    @Length(max=50, message="O nome não pode ultrapassar {max} caracteres")
    @Column(name="NOME", length=50, nullable=false)    
    @Index(name="IDX_GRUPO_NOME")
    private String nome;

    public Grupo(){

    }    

    //metodoss get() e set(), hashCode() e equals()


}
Classe EntityManagerUtil:


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

public class EntityManagerUtil {
    private static EntityManagerFactory factory = null;
    private static EntityManager em = null;

    public static EntityManager getEntityManager(){
        if (factory == null){
            factory = Persistence.createEntityManagerFactory("ProjetosJSF");
        }
        if (em == null){
            em = factory.createEntityManager();
        }
        return em;    
    }
}

Classe TesteInserirGrupo:
import javax.persistence.EntityManager;

import br.my.projeto.bean.Grupo;
import br.my.projeto.jpa.EntityManagerUtil;

public class TesteInserirGrupo {

    public static void main(String[] args) {

        EntityManager em = EntityManagerUtil.getEntityManager();
        Grupo g = new Grupo();
        g.setNome("Gestores");
        em.getTransaction().begin();
        em.persist(g);
        em.getTransaction().commit();
    }
}
  • Qual é o erro? Você se certificou de que o EntityManagerFactory e o EntityManager foram criados? Poste o seu persistence.xml.

    thiago_dias   23 de mai de 2014
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

5 respostas

Não é a resposta que estava procurando? Procure outras perguntas com as tags hibernate ou faça a sua própria pergunta.