ERRO: hibernate - Could not execute JDBC batch update

Oq poderia causar o erro “Could not execute JDBC batch update” no hibernate + mysql + tomcat

eu faco o deploy da minha aplicacao e quando eu chamo o jsp pela primeira vez ele funciona, ele inclui um registro em uma determinada tabela.

porem quando eu chamo a jsp novamente ele da o erro “Could not execute JDBC batch update”.

PS: segue o codigo na minha jsp

padrao.HibernateUtil.beginTransaction();
net.sf.hibernate.Session s = padrao.HibernateUtil.getSession();

padrao.Teste bean = new padrao.Teste();
bean.setDs_teste("rafael");
s.save(bean);

padrao.HibernateUtil.commitTransaction();
padrao.HibernateUtil.closeSession();

alguem sabe oq poderia ser isso?
so lembrando… como eu disse anteriormente, na primeira vez que eu chamo funciona (ele insere um registro), mas quando eu chamo novamente ele comeca a da o erro.

obrigado.

Rafael

Olá,

para fazer update use o update() ou saveOrUpdate().

Cara, olha direitinho o log do servlet container, pois lá verá a SQLException que causou esta outra. Muito provavelmente está tentando inserir dois registros idênticos no banco, por não fazer como o sr. Lecheta corrigiu.

como assim? como voce viu no codigo que eu fiz era para ele sempre incluir um novo. pois toda vez que eu chamo a jsp ele da um new Teste() e da o save(teste), ou seja, inclui o registro.

existe a possibilidade de o hibernate esta colocando em buffer o objeto criado na primeira vez que eu chamei a jsp e na segunda vez que eu chamo ele nao mais tenta gerar uma nova sequencia?

sera que eu estou falando merda? heheheheehe :slight_smile:

pois isso que eu nao chamei o metodo update() ou saveorupdate().

Depende cara.

O que eu estou adivinhando é que a propriedade “nome” no banco de dados não aceita dois registros iguais.

Você leu a exception inteira? Caso não, vá na tela do Tomcat ou nos logs e leia-a com cuidado. Tenho quase certeza essa que você postou é consequência de alguma outra.

ps.: colocar código que não tem absolutamente nada a ver com a camada de visualização em jsp é feio :expressionless: use um servlet \o/