Ocorre esse erro maldito qdo eu dou o flush() na minha sessão.
No meu object Orgao, eu tenho um many to one para uma pessoa.
Qdo eu tento salvar, ocorre este erro, sendo que eu busquei o registro de pessoa do banco, anteriorment.
Alguem tem alguma dica?
Kra, jah tentaste o colocar o atributo
inverse=“true”
no teu mapeamento 1:n ?
Fabio,
Envie-nos a mensagem da exceção e também como está o seu código e a configuração do Hibernate.
Uma possibilidade é que esteja criando novos objetos, adicionando ao seu relacionamento, mas não os gravou no banco antes e nem adicionou o cascade save update no relacionamento.
Bem, mas só quando enviar o código para vermos melhor.
Rodrigo Castro
Mercado de Serviços - http://www.mercadodeservicos.com.br
Encontre Prestadores de Serviços e Contrate Serviços Online
Bom,
aí está meu codigo:
hbm.xml:
<many-to-one name="pessoa" class="com.aix.protocolo.Pessoa" column="pes_cod" cascade="none"/>
Minha classe que mapeia tem este construtor:
private Pessoa pessoa;
//constutor
public Orgaos(){
this.pessoa = new Pessoa();
}
E na inserção eu pesquiso a pessoa e seto no atributo pessoa:
objOrgao.setPessoa(objOrgao.getPessoa().load(/*args*/));
Vlws pela ajuda
=]
Já consegui aqui,
É que no meu método reset()
Eu criava um novo objeto que seria gravado, e no execute eu chamava o reset novamente, então ele criava duas instâncias na memória, sendo que eu setava os dados na segunda instancia e tentava gravar no banco a primeira instância que estava com os atributos nulos.
Obrigado a todos.
=]