Re:Erro no Hibernate (Duplicidade)

3 respostas
ateubh

o seu arquivo facade deve estar assim

Session session = dao.HibernateUtil.currentSession(); Transaction tx = session.beginTransaction(); session.save(autoClean); tx.commit(); dao.HibernateUtil.closeSession();

mude para isso

Session session = dao.HibernateUtil.currentSession(); Transaction tx = session.beginTransaction(); session.saveOrUpdate(autoClean); tx.commit(); dao.HibernateUtil.closeSession();

3 Respostas

ateubh

ateubh:
o seu arquivo facade deve estar assim

Session session = dao.HibernateUtil.currentSession(); Transaction tx = session.beginTransaction(); session.save(...); tx.commit(); dao.HibernateUtil.closeSession();

mude para isso

Session session = dao.HibernateUtil.currentSession(); Transaction tx = session.beginTransaction(); session.saveOrUpdate(...); tx.commit(); dao.HibernateUtil.closeSession();

raikk0n3n
Caused by: java.sql.BatchUpdateException: Duplicate entry '89' for key 1
        at com.mysql.jdbc.ServerPreparedStatement.executeBatch(ServerPreparedStatement.java:648)
        at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:58)
        at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:195)
        ... 71 more

Isso no ALTERAR
Esse campo é o do Codigo!!!
Alguem onde deve estar o erro

raikk0n3n
public void incluir(Cliente c) {
        Session session = new HibernateSessionCreator().createSession();
        
        try {
            session.beginTransaction();
            session.saveOrUpdate(c);
            session.getTransaction().commit();
        }catch(Exception ex) {
            session.getTransaction().rollback();
            //ex.printStackTrace();
            throw new HibernateException(ex.getMessage());
        }finally {
            session.close();
        }
    }

já esta assim

Criado 3 de janeiro de 2007
Ultima resposta 3 de jan. de 2007
Respostas 3
Participantes 2