object is an unsaved transient instance - save the transient instance before merging: br.com.Cidade
Estou removendo um objeto pessoa e tenho:
if (pessoa.getEnderecos() != null) {
List<Pessoaendereco> enderecos = new ArrayList<Pessoaendereco>();
enderecos = pessoa.getEnderecos();
for (Pessoaendereco pe : enderecos) {
session.delete(session.merge(pe));
}
...
Pessoa _pessoa = (Pessoa) session.merge(pessoa);
session.delete(_pessoa); // exception aqui
}
entidades:
public class Pessoa {
@OneToMany
@JoinColumn(name="cdPessoa", insertable=false, updatable=false)
private List<Pessoaendereco> enderecos;
}
public class Pessoaendereco {
@OneToOne
@JoinColumn(name="cdCidade",insertable=false,updatable=false)
private Cidade cidade;
}
public class Cidade{
@OneToOne
@JoinColumn(name="cdPais",insertable=false,updatable=false)
private Pais pais;
}
já tentei salvar o objeto pessoa como diz na exception mas nada...
for (Pessoaendereco pe : enderecos) {
Cidade c = pe.getCidade();
session.saveOrUpdate(c);
session.merge(c);
session.delete(session.merge(pe));
}