JPA com Firebird

6 respostas
I

Eu já tentei colocar todas as opções que funcionam em outros bancos para mapear um campo do tipo auto increment com Sequence no Firebird.

@Id

@SequenceGenerator( name = CODIGO, sequenceName = GEN_CLIENTES_ID, allocationSize = 1 )

@GeneratedValue( strategy = GenerationType.IDENTITY, generator = SEQ_CLIENTES_ID )

@javax.persistence.Column(name = CODIGO)

private Integer codigo;

Dá um erro, alguém poderia me ajudar, grato :slight_smile:

6 Respostas

G

Vc já criou a Generator no Firebird e linkou com a Triger?

I

Sim

I

Quando coloco GenerationType dá esse erro ao mandar gravar.

Internal Exception: org.firebirdsql.jdbc.FBSQLException: Exception. nullError Code: 0
Call:UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?
bind =&gt [50, SEQ_GEN]
Query:DataModifyQuery()
Local Exception Stack:
Exception [TOPLINK-4002] (Oracle TopLink Essentials - 9.1 (Build b36-rc)): oracle.toplink.essentials.exceptions.DatabaseException
Internal Exception: org.firebirdsql.jdbc.FBSQLException: Exception. nullError Code: 0
Call:UPDATE SEQUENCE SET SEQ_COUNT = SEQ_COUNT + ? WHERE SEQ_NAME = ?
bind =&gt [50, SEQ_GEN]
Query:DataModifyQuery()

e Quando coloco qualquer outro Generation Type dá o seguinte erro ao criar uma referência da classe.

Exception in thread “AWT-EventQueue-0” javax.persistence.PersistenceException: Exception [TOPLINK-7144] (Oracle TopLink Essentials - 9.1 (Build b36-rc)): oracle.toplink.essentials.exceptions.ValidationException
Exception Description: SEQ_CLIENTES_ID: platform DatabasePlatform doesn’t support NativeSequence.

I

Esqueci de colocar o tipo o primeiro erro é quando está AUTO e o outro é quando está com qualquer outro GenerationType

A

tenta assim:

@Id @SequenceGenerator( name = "SEQ", sequenceName = "GEN_CLIENTES_ID", allocationSize = 1 ) @GeneratedValue( strategy = GenerationType.SEQUENCE, generator = "SEQ" ) @javax.persistence.Column(name = "CODIGO")//não precisa mapear a coluna quando teu atributo tem o mesmo nome da coluna no banco private Integer codigo;

J

Bom dia Pessoal,
Estou estudando JPA, EJB e Firebird. Bem quando vou executar a aplicação tenho o seguinte erro:

<blockquote>TopLink, version: Oracle TopLink Essentials - 2.0 (Build b58g-fcs (09/07/2007))

Server: unknown

RAR5111 : Error casting to javax.sql.Datasource :{0}

java.lang.ClassCastException: org.firebirdsql.jdbc.FBDriver cannot be cast to javax.sql.DataSource</blockquote>

Alguem sabe o pq?
Obrigado!!!
[]´s

Criado 2 de março de 2007
Ultima resposta 7 de dez. de 2007
Respostas 6
Participantes 4