seguinte estou tentando persistir alguns dados no meu banco usando o hibernate e estou tomando o seguinte erro:
log4j:WARN No appenders could be found for logger (org.hibernate.cfg.annotations.Version).
log4j:WARN Please initialize the log4j system properly.
Hibernate: insert into estado (estado, sigla, estadoid) values (?, ?, ?)
Hibernate: select estado_.estadoid, estado_.estado as estado17_, estado_.sigla as sigla17_ from estado estado_ where estado_.estadoid=?
Hibernate: insert into cidade (cidadenome, estadoid, cidadeid) values (?, ?, ?)
Hibernate: insert into perfil (pcad, pmov, pmaster, observacoes, perfilid) values (?, ?, ?, ?, ?)
Hibernate: select perfil_.perfilid, perfil_.pcad as pcad12_, perfil_.pmov as pmov12_, perfil_.pmaster as pmaster12_, perfil_.observacoes as observac5_12_ from perfil perfil_ where perfil_.perfilid=?
Hibernate: insert into usuario (nome, sobrenome, setor, login, senha, datainclusao, perfilid, usuarioid) values (?, ?, ?, ?, ?, ?, ?, ?)
Hibernate: insert into numeracao (numero, observacoes, numeracaoid) values (?, ?, ?)
Hibernate: select numeracao_.numeracaoid, numeracao_.numero as numero7_, numeracao_.observacoes as observac3_7_ from numeracao numeracao_ where numeracao_.numeracaoid=?
Hibernate: insert into produto (modelo, qtdatual, qtdminima, qtdmaxima, valorcusto, valorcompra, situacao, datacadastro, linha, numeracaoid, produtoid) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
Hibernate: select cidade_.cidadeid, cidade_.cidadenome as cidadenome0_, cidade_.estadoid as estadoid0_ from cidade cidade_ where cidade_.cidadeid=?
Hibernate: insert into cliente (tipopessoa, rua, bairro, numero, complemento, estado, email, homepage, fone, celular, datainclusao, agencia, conta, digito, praca, situacao, observacoes, cidadeid, clienteid) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
org.hibernate.exception.DataException: could not insert: [com.Lgweb.Tcc.Model.Cliente]
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:77)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2267)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:56)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at com.Lgweb.Tcc.Dao.DaoCliente.salvar(DaoCliente.java:74)
at com.Lgweb.Tcc.Util.Teste.main(Teste.java:114)
Caused by: org.postgresql.util.PSQLException: ERROR: value too long for type character varying(2)
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1512)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1297)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:437)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:307)
at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2247)
... 12 more
Hibernate: select cliente_.clienteid, cliente_.tipopessoa as tipopessoa1_, cliente_.rua as rua1_, cliente_.bairro as bairro1_, cliente_.numero as numero1_, cliente_.complemento as compleme6_1_, cliente_.estado as estado1_, cliente_.email as email1_, cliente_.homepage as homepage1_, cliente_.fone as fone1_, cliente_.celular as celular1_, cliente_.datainclusao as datainc12_1_, cliente_.agencia as agencia1_, cliente_.conta as conta1_, cliente_.digito as digito1_, cliente_.praca as praca1_, cliente_.situacao as situacao1_, cliente_.observacoes as observa18_1_, cliente_.cidadeid as cidadeid1_ from cliente cliente_ where cliente_.clienteid=?
org.hibernate.exception.ConstraintViolationException: could not insert: [com.Lgweb.Tcc.Model.Pessoafisica]
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:71)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2267)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2660)
at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:56)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:250)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:234)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:141)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
at org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at com.Lgweb.Tcc.Dao.DaoPessoafisica.salvar(DaoPessoafisica.java:75)
at com.Lgweb.Tcc.Util.Teste.main(Teste.java:122)
Caused by: org.postgresql.util.PSQLException: ERROR: null value in column "clienteid" violates not-null constraint
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1512)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1297)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:188)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:437)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:353)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:307)
at org.hibernate.jdbc.NonBatchingBatcher.addToBatch(NonBatchingBatcher.java:23)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2247)
... 12 more
Hibernate: insert into pessoafisica (nome, cpf, rg, clienteid, pessoafisicaid) values (?, ?, ?, ?, ?)
aqui meu teste
package com.Lgweb.Tcc.Util;
import com.Lgweb.Tcc.Dao.DaoCidade;
import com.Lgweb.Tcc.Dao.DaoCliente;
import com.Lgweb.Tcc.Dao.DaoEstado;
import com.Lgweb.Tcc.Dao.DaoNumeracao;
import com.Lgweb.Tcc.Dao.DaoPerfil;
import com.Lgweb.Tcc.Dao.DaoPessoafisica;
import com.Lgweb.Tcc.Dao.DaoProduto;
import com.Lgweb.Tcc.Dao.DaoUsuario;
import com.Lgweb.Tcc.Idao.IDaoCidade;
import com.Lgweb.Tcc.Idao.IDaoCliente;
import com.Lgweb.Tcc.Idao.IDaoEstado;
import com.Lgweb.Tcc.Idao.IDaoNumeracao;
import com.Lgweb.Tcc.Idao.IDaoPerfil;
import com.Lgweb.Tcc.Idao.IDaoPessoafisica;
import com.Lgweb.Tcc.Idao.IDaoProduto;
import com.Lgweb.Tcc.Idao.IDaoUsuario;
import com.Lgweb.Tcc.Model.Cidade;
import com.Lgweb.Tcc.Model.Cliente;
import com.Lgweb.Tcc.Model.Estado;
import com.Lgweb.Tcc.Model.Numeracao;
import com.Lgweb.Tcc.Model.Perfil;
import com.Lgweb.Tcc.Model.Pessoafisica;
import com.Lgweb.Tcc.Model.Produto;
import com.Lgweb.Tcc.Model.Usuario;
public class Teste {
/**
* @param args
*/
public static void main(String[] args) {
Estado e = new Estado();
Cidade c = new Cidade();
e.setEstadoid(2);
e.setSigla("Pr");
e.setEstado("Paraná");
c.setCidadeid(2);
c.setCidadenome("apucarana");
c.setEstadoid(e);
IDaoEstado idao = new DaoEstado();
idao.salvar(e);
IDaoCidade idaoc = new DaoCidade();
idaoc.salvar(c);
//modulo 2
Perfil p = new Perfil();
p.setPerfilid(2);
p.setPcad("s");
p.setPmaster("s");
p.setPmov("s");
p.setObservacoes("hhhhhhhhhhhhhhhhhhhhhhhhhh");
IDaoPerfil idaop= new DaoPerfil();
idaop.salvar(p);
Usuario u = new Usuario();
u.setUsuarioid(2);
u.setNome("leandro");
u.setLogin("lgweb");
u.setSobrenome("godoy");
u.setSetor("teste");
u.setSenha(51);
u.setPerfilid(p);
IDaoUsuario idaou = new DaoUsuario();
idaou.salvar(u);
Numeracao num = new Numeracao();
num.setNumeracaoid(2);
num.setNumero(38);
num.setObservacoes("calcado adulto feminino");
IDaoNumeracao idaonum = new DaoNumeracao();
idaonum.salvar(num);
Produto prod = new Produto();
prod.setProdutoid(2);
prod.setDatacadastro(new java.util.Date());
prod.setLinha("masculina");
prod.setModelo("90hes600");
prod.setNumeracaoid(num);
prod.setQtdatual(500);
prod.setQtdmaxima(1000);
prod.setQtdminima(100);
prod.setSituacao("A");
prod.setValorcusto(200.33);
prod.setValorcompra(195.26);
IDaoProduto idaoprod = new DaoProduto();
idaoprod.salvar(prod);
Cliente cli = new Cliente();
cli.setClienteid(2);
cli.setAgencia(15);
cli.setBairro("sssss");
cli.setCelular(999);
cli.setComplemento("mmmmmmmmm");
cli.setCidadeid(c);
cli.setClienteid(129);
cli.setRua("eeeeeee");
cli.setCidadeid(c);
cli.setConta(67);
cli.setDatainclusao(new java.util.Date());
cli.setDigito(1);
cli.setEmail("leand.br");
cli.setEstado("estado");
cli.setFone(6786);
cli.setHomepage("wwww.com.br");
cli.setNumero(90);
cli.setObservacoes("h");
cli.setPraca("apuc");
cli.setRua("min");
cli.setSituacao("A");
cli.setTipopessoa("F");
IDaoCliente idaocli = new DaoCliente();
idaocli.salvar(cli);
Pessoafisica pf = new Pessoafisica();
pf.setPessoafisicaid(2);
pf.setNome("Leandro");
pf.setRg(9999);
pf.setClienteid(cli);
IDaoPessoafisica idaopf = new DaoPessoafisica();
idaopf.salvar(pf);
}
}
se alguem puder ajudar fico grato, pois nao consegui identificar a causa do erro.
abracos