Groovy 1.6b2 + JPA + @Bindable = erro!
27/11/2008 00:00
0
Galera, alguém sabe o que pode estar acontecendo com o meu código? Estou usando Toplink e @Bindable, mas quando tento persistir um objeto, recebo um erro ao tentar gravar um campo chamado THIS$PROPERTYCHANGESUPPORT e dá erro!


package gfitadm.registration

import java.io.Serializable
import javax.persistence.Basic
import javax.persistence.Column
import javax.persistence.Entity
import javax.persistence.Id
import javax.persistence.NamedQueries
import javax.persistence.NamedQuery
import javax.persistence.Table
import groovy.beans.Bindable
import javax.persistence.EntityManager
import javax.persistence.EntityManagerFactory
import javax.persistence.Persistence


@Entity(name = "User")
@Table(name = "users")
@NamedQueries(value = [
@NamedQuery(
name = "User.findAll",
query = "SELECT u.id, u.login, u.password, u.level_id, u.person_id FROM User u"
),
@NamedQuery(
name = "User.findByLogin",
query = "SELECT u.id, u.login, u.password, u.level_id, u.person_id, u.level_id FROM User u WHERE u.login = :login"
)]
)
@Bindable
class User implements Serializable {
@Id
@Basic(optional = false)
@Column(name = "id")
Integer id
@Column(name = "login")
String login
@Column(name = "password")
String password
@Column(name = "person_id")
Integer person_id
@Column(name = "level_id")
Integer level_id
}

def user = new User(login:'teste',password:'teste')
def emf = Persistence.createEntityManagerFactory("gfitadmpu")
def em = emf.createEntityManager()
em.getTransaction().begin()
try {
em.persist(user)
em.getTransaction().commit()
} catch (Exception e) {
e.printStackTrace()
em.getTransaction().rollback()
} finally {
em.close()
}


E o erro é:
javax.persistence.RollbackException: Exception [TOPLINK-4002] (Oracle TopLink Essentials - 2.0.1 (Build b09d-fcs (12/06/2007))): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: org.postgresql.util.PSQLException: ERROR: column "this$propertychangesupport" of relation "users" does not exist
Error Code: 0
Call: INSERT INTO users (id, password, person_id, login, level_id, THIS$PROPERTYCHANGESUPPORT) VALUES (?, ?, ?, ?, ?, ?)
bind => [null, null, null, null, null, [B@13a8eb1]
Query: InsertObjectQuery(gfitadm.registration.User@83de21)

<!-- s:roll: --><img src="{SMILIES_PATH}/icon_rolleyes.gif" alt=":roll:" title="Rolling Eyes" /><!-- s:roll: --> [/code]
Tags: Groovy


Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto