Hibernate + Oracle

1 resposta
MaiqueL

Olá pessoal,

não estou conseguindo fazer um insert simples.O banco de dados que eu estou usando é o Oracle.

controller

public void create(Usuario usuario) { Session session = HibernateUtil.getSession(); session.beginTransaction(); session.save(usuario); session.close(); }

classe bean com a sequence

@Id
    @GeneratedValue(generator="SEQ_USUARIO",strategy=GenerationType.SEQUENCE)
    @Basic(optional = false)
    @NotNull
    @Column(name = "ID")
    private BigDecimal id;
    @Size(max = 20)

erroJul 9, 2011 2:41:07 PM org.hibernate.cfg.annotations.EntityBinder bindTable INFO: Bind entity br.com.empresa.bean.Usuario on table USUARIO Exception in thread "main" java.lang.ExceptionInInitializerError at br.com.empresa.JPAController.UsuarioJPAController.create(UsuarioJPAController.java:18) at br.com.empresa.JPAController.UsuarioJPAController.main(UsuarioJPAController.java:32) Caused by: org.hibernate.AnnotationException: Unknown Id.generator: SEQ_USUARIO at org.hibernate.cfg.BinderHelper.makeIdGenerator(BinderHelper.java:428) at org.hibernate.cfg.AnnotationBinder.bindId(AnnotationBinder.java:1908) at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1281) at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:754) at org.hibernate.cfg.AnnotationConfiguration.processArtifactsOfType(AnnotationConfiguration.java:534) at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:286) at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1286) at org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:859) at br.com.empresa.JPAController.HibernateUtil.<clinit>(HibernateUtil.java:31) ... 2 more Java Result: 1

1 Resposta

MaiqueL

Resolvido

apenas corrigi a classe bean:

@Id
    @SequenceGenerator(  sequenceName = "SEQUENCE",name = "ID",allocationSize = 1)
    @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="ID")
    @Basic(optional = false)
    @Column(name = "ID")
    private Long id;
Criado 9 de julho de 2011
Ultima resposta 9 de jul. de 2011
Respostas 1
Participantes 1