Hibernate Problemas com insert

Boa noite pessoal do Guj.
Estou aqui novamente para pedir um auxílio pq já não sei mais o que fazer. :frowning:
Tenho duas classes “Casa” e “Endereco” é um exemplo
O relacionamento entre elas é um para um.
Aqui vai o código das tabelas:

[quote]CREATE TABLE casa
(
id_casa int2 NOT NULL,
nome varchar(10),
CONSTRAINT casa_pkey PRIMARY KEY (id_casa)
)

CREATE TABLE endereco
(
id_endereco int2 NOT NULL,
id_casa int2,
rua varchar(10),
CONSTRAINT endereco_pkey PRIMARY KEY (id_endereco),
CONSTRAINT endereco_id_casa_fkey FOREIGN KEY (id_casa) REFERENCES casa (id_casa) )[/quote]

Agora vou demostrar as classes:

[quote]
@Entity
@Table(name=“endereco”)
@SequenceGenerator(name = “SEQ_END”, sequenceName = “seq_endereco”)
public class Endereco {

private Integer id_endereco;
private String rua;
private Casa casa;

@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "SEQ_END")
public Integer getId_endereco() {
	return id_endereco;
}
@OneToOne(mappedBy = "endereco")
public Casa getCasa() {
	return casa;
}
public String getRua() {
	return rua;
}
public void setCasa(Casa casa) {
	this.casa = casa;
}
public void setId_endereco(Integer id_endereco) {
	this.id_endereco = id_endereco;
}
public void setRua(String rua) {
	this.rua = rua;
}

@Table(name=“casa”)
@Entity
@SequenceGenerator(name = “SEQ_CLOG”, sequenceName = “seq_casa”)
public class Casa {

private Integer id_casa;
private String nome;
private Endereco endereco;

@OneToOne(cascade = CascadeType.ALL)
@PrimaryKeyJoinColumn
public Endereco getEndereco() {
	return endereco;
}
public void setEndereco(Endereco endereco) {
	this.endereco = endereco;
}
@Id
@GeneratedValue(strategy = GenerationType.AUTO, generator = "SEQ_CLOG")
public Integer getId_casa() {
	return id_casa;
}
public String getNome() {
	return nome;
}
public void setId_casa(Integer id_casa) {
	this.id_casa = id_casa;
}
public void setNome(String nome) {
	this.nome = nome;
}

}[/quote]

Bom quando tento incluir conforme o codigo abaixo gera o seguite erro:

[quote]
sessao = HibernateUtility.getSession();
Casa casa = new Casa();
Endereco ends= new Endereco();

	ends.setRua("Rua do Verdao");
	casa.setNome("Verdao");
	casa.setEndereco(ends);
	
	
	
	 Transaction tx =  sessao.beginTransaction();
	 sessao.save(casa);
	 sessao.flush();
	 
	 tx.commit();[/quote]

Erro:

[quote]Exception in thread “main” org.hibernate.exception.DataException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:75)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:202)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:230)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:140)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:296)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1007)
at carro.regra.testes.TesteHibernate.teste(TesteHibernate.java:71)
at carro.regra.testes.TesteHibernate.main(TesteHibernate.java:20)
Caused by: java.sql.BatchUpdateException: Entrada em lote 0 /* insert teste.tabela.Endereco */ insert into endereco (rua, id_endereco) values (Rua do Verdao, 19) foi abortada. Chame getNextException para ver a causa.
at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2396)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1257)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:334)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2455)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:195)
… 7 more[/quote]

Pelo que eu vi ele não cria id_casa para incluir o Endereço…

Valeu pessoal pela atenção…

Muito obrigado mesmo.
:slight_smile:

info_god…
Cara quando tento inserir só um registro na tabela Casa… funciona blz…
o resto tá tudo certinho…
só não consigo inserir na tabela Endereco.
:frowning:

Fala galera do Guj…
Alguém teve esse mesmo problema?

Valeu Pessoal pela atenção…

Fui. :oops:

Estou precisando de uma LUZ!!!
Por favor me ajudem…

Vc verificou se o seu driver esta correto? Ja fez um teste simples em tabela unica pra ver se insere?