Dies ist mein Code in DAOImpl (Hibernate):Hibernate Fehler, wenn Sitzung Commit
@Transactional
public void insert(Cage cage) {
Session session = null;
Transaction tx = null;
try{
session = getHibernateTemplate().getSessionFactory().openSession();
tx = session.beginTransaction();
session.saveOrUpdate(cage);
session.flush();
session.clear();
tx.commit();
}catch(RuntimeException e){
try{
tx.rollback();
}catch(RuntimeException rbe){
rbe.printStackTrace();
System.out.println("Couldn’t roll back transaction");
}
throw e;
}finally{
if(session!=null){
session.close();
}
}
}
Wenn zum zweiten Mal Operationen Dateneingabe (Same PK) erfolgt mit diesem Problem:
org.hibernate.exception.ConstraintViolationException: konnte nicht Batch-JDBC ausführen Update
Sie sollten den gesamten Stack-Trace einbeziehen, nicht die erste Zeile. – azurefrog
Primärschlüssel sollte für jeden Eintrag eindeutig sein, zweiter Eintrag mit demselben PK wird definitiv diese Ausnahme geben. – kirti