Ajuda: Relacionamento <many-to-one> não obrigatório

1 resposta
A

Boa noite galera!

Estou com um problema com relacionamento hibernate.

Esta dando o erro: object references an unsaved transient instance - save the transient instance before flushing na hora de salvar um objeto.
Tenho uma tabela "Lancamento" com relacionamento com a tabela "TabelaItem".
Quando o meu objeto "TabelaItemVO" esta preenchido funciona perfeitamente, mas no meu caso o objeto "TabelaItemVO"
não é obrigatório e passo "null" e quando salvo ocorre o erro acima.

Alguem tem alguma dica!

Abaixo um exemplo do código.

Agradeço desde já...

Obrigado

Armando Martins.

// Classe Lancamento
public class LancamentoContaVO extends ...
public LancamentoContaVO(){
		super();
	}
	private	Long 	 	pk;
	private String		cd_codigo;
	private TabelaItemVO 	tabelaItemVO;

	public Long getPk() { return pk; }
	public void setPk(Long pk) { this.pk = pk; }
	public String getCd_codigo() { return cd_codigo; }
	public void setCd_codigo(String cd_codigo) { this.cd_codigo = cd_codigo; }

	public TabelaItemVO getTabelaItemVO() { return tabelaItemVO; }
	public void setTabelaItemVO(TabelaItemVO tabelaItemVO) { this.tabelaItemVO = tabelaItemVO; }
...
// Classe TabelaItemVO
public class TabelaItemVO extends ...
	public TabelaItemVO(){
		super();
	}
	private	Long 	 	pk;
	private String		cd_codigo;
    
	public Long getPk() { return pk; }
	public void setPk(Long pk) { this.pk = pk; }
	public String getCd_codigo() { return cd_codigo; }
	public void setCd_codigo(String cd_codigo) { this.cd_codigo = cd_codigo; }
...
// Arquivo XML: hbm.xml
<hibernate-mapping>
  <class table="lancamentoconta" name="br.com.spd.vo.cadastro.LancamentoContaVO">
    <id name="pk" column="pk" type="long" unsaved-value="null">
	<generator class="identity"/>
    </id>
    <property name="cd_codigo" 	column="cd_codigo"/>
    <many-to-one name="TabelaItemVO" column="pk_banco" class="br.com.spd.vo.cadastro.TabelaItemVO" not-null="false"/>
  </class>
</hibernate-mapping>

<hibernate-mapping>
  <class table="tabelaitem" name="br.com.spd.vo.cadastro.TabelaItemVO">
    <id name="pk" column="pk" type="long" unsaved-value="null">
     <generator class="identity"/>
    </id>
    <property name="cd_codigo" 		column="cd_codigo" 		type="string"/>
</hibernate-mapping>
...

1 Resposta

A

bom dia galera…

Pelo jeito ninguem passou por isso, alguém tem alguma idéia para me ajudar e até mesmo utilizar outra estrutura?

Obrigado

Armando

Criado 2 de outubro de 2008
Ultima resposta 3 de out. de 2008
Respostas 1
Participantes 1