Pessoal,
Por favor, me tirem essa dúvida:
Tenho a classe Pessoa, contendo um set de EnderecoPessoa (que tbém
contém a classe Endereco, tabela “endereco” no bd) para ser persistida
no postgres usando hibernate. Assim, a classe EnderecoPessoa (tabela
"endereco_pessoa" no bd) é composta por codigo_pessoa (on update
CASCADE, on delete CASCADE) e codigo_endereco (on update CASCADE, on
delete CASCADE).
Estou usando a classe PessoaDAO para gravação no bd, e ocorre erro na
seguinte situação:
-
a partir de um registro existente na tabela “pessoa”, contendo 2
"endereco_pessoa", preciso excluir um deles e atualizar o outro; -
assim eu faço um Session.delete() em “endereco” (não em
"endereco_pessoa"), seguido de um Session.updateOrSaveCopy() na outro
"endereco" (não em “endereco_pessoa” tbém), e depois ainda faço um
Session.updateOrSaveCopy() em “pessoa” (atualizando o set de
EnderecoPessoa), tudo isso usando um único Session e um Transaction.
Assim eu recebo a exception:
net.sf.hibernate.ObjectDeletedException: The object with that id was deleted: EnderecoPessoaPK@5dbc82[cdPessoa=2,cdEndereco=6], of class: EnderecoPessoa
E aí eu pergunto: o que está errado?? e qual tabela devo excluir para executar minha operação??
Desde já agradeço a atenção…
[]'s