guilherme.chapiewski 10 de fev. de 2007
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 13 de fev. de 2007
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 14 de fev. de 2007
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).
marcelo.599 11 de out. de 2007
verifique se sua classe possui o método [color=red]setId[/color]
ramos1berto 8 de abr. de 2008
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]?