Hibernate - Erro ao Inserir

2 respostas
F

Pessoal,

Tenho o seguinte problema com o hibernate e já pesquisei em varios lugares e n encontrei resposta, se alguem souber…

Criei uma nova classe, por exemplo, Pessoa. O id (Long id) fica como nulo, então assim o hibernate sabe que tem q inserir. Eu uso dao.saveOrUpdate(pessoa) e o hibernate gera um comando insert, sendo q se der algum erro no banco, tipo um campo not null, o hibernate executa o rollback mas n volta o id do objeto. Se eu corrigir o objeto após esse erro e executar saveOrUpdate novamene o hibernate tenta executar um update pois o id ficou no objeto, e esse update n vai funcionar.

Eu poderia verificar se deu erro e setar manualmente o id da pessoa, o problema eh q o erro acontece com as collections do objeto tbm, ao inserir o “N” de pessoa, tipo pessoa.telefones, pessoa.enderecos. Assim fica inviavel setar nulo manualmente.

Alguem sabe como corrigir esse erro no hibernate?

Fábio

2 Respostas

D

tenho esse mesmo problema e até hoje nao consegui solução palusivel para isto !!!

plentz

Bom, de cara você deve seguir uma recomendação para quem trabalha com Hibernate. Deu problema na transação, descarta tua Session e afins. Sobre o rollback do identificador, não tenho certeza, mas pelo que me lembro o hibernate só implementa isso automaticamente para delete, usando o

hibernate.use_identifer_rollback
Criado 15 de maio de 2007
Ultima resposta 17 de mai. de 2007
Respostas 2
Participantes 3