Erro no Hibernate &gt&gtidentifier of an instance of

5 respostas
eliasjr_go

Estou começando a mecher com hibernate, e precisei fazer um alteração num sistema já pronto, o prob é o seguinte, tenho uma classe que tem uma Collection de outra classe, e dá esse erro:

identifier of an instance of com.hm.prefeitura.arrecadacao2.LancamentoReceitas was altered from 1 to 0

o que pode ser isso??!!

Abração a todos

5 Respostas

guilherme.chapiewski

Significa que você não está programando a sua SessionFactory corretamente.

Já existiu uma discussão a respeito desse problema, veja: http://www.guj.com.br/posts/list/50825.java

eliasjr_go

Eu dei uma olhada lá Guilherme, mas não consegui ainda identificar meu problema… Eu debuguei esse código:

public int inclui(String caminho, String xml) throws Exception { repository.beginTransaction(); Object object = objectFromXml(xml); try { int result; if (object instanceof RObject) { result = repository.inclui(caminho, (RObject) object); } else { result = repository.inclui(caminho, (Collection) object); } repository.endTransaction(); return result; } catch (Exception e) { repository.rollbackTransaction(); throw e; } }

ele inclui corretamente mais qndo ele chama o método flush(), dentro no repository.endTransaction() ele dá aquele erro:

identifier of an instance of com.hm.prefeitura.arrecadacao2.LancamentoReceitas was altered from 1 to 0

guilherme.chapiewski

Antes de executar o repository.inclui com o objeto criado a partir do XML, dá um output do id do objeto. Verifique também o método equals…

É possível que você tenha sobrescrito o equals e não tenha levado o id em conta (chute).

M

verifique se sua classe possui o método [color=red]setId[/color]

ramos1berto

Mais um chute:
http://parasjain01.wordpress.com/2007/05/16/hello-world/

Em resumo, tem certeza que os tipos dos IDs estão corretos?
No Bean, no arquivo de mapeamento e no banco de dados]?

Criado 9 de fevereiro de 2007
Ultima resposta 8 de abr. de 2008
Respostas 5
Participantes 4