Boa tarde,
pessoal, seguinte, estou fazendo minha aplicação utilizando vraptor e hibernate, oq acontece, tenho muitas propertys com many-to-one, que não são obrigatorias, e quando vou salvar, ele me da seguinte mensagem
org.hibernate.TransientObjectException: object references an unsaved transient instance - save the transient instance before flushing: br.com.tga.juridico.entidades.cadastros.Acao
org.hibernate.engine.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:243)
Oq acontece, o vraptor me retorna o objeto e dentro dele tem uma propriedade com propriedades nulas.
Por exemplo
Processo
Long id
Acao acao
o vraptor me retorna uma instancia de Acao, com os atributos todos nulos, no que para o hibernate gera o erro.
para resolver fiz assim.
public void setAcao(Acao acao) {
if (acao.getId() != null)
this.acao = acao;
else
this.acao = null;
}
Mas gostaria de uma solução mais fácil ou generica para diminuir o trabalho.
tem mais informações em um outro topico meu.
Desculpe a duplicidade.
http://www.guj.com.br/java/274418-orghibernatetransientobjectexception