Author: tdraier
Date: Thu Jul 19 11:05:31 2007
New Revision: 18035

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D18035&repname=
=3Djahia
Log:
avoid duplicate keys

Modified:
    branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/dao/Jahi=
aWorkflowDAO.java

Modified: branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/da=
o/JahiaWorkflowDAO.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/branches/JAHIA-5-0-SP=
-BRANCH/core/src/java/org/jahia/hibernate/dao/JahiaWorkflowDAO.java&rev=3D1=
8035&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/dao/Jahi=
aWorkflowDAO.java (original)
+++ branches/JAHIA-5-0-SP-BRANCH/core/src/java/org/jahia/hibernate/dao/Jahi=
aWorkflowDAO.java Thu Jul 19 11:05:31 2007
@@ -37,12 +37,14 @@
     public void save(JahiaWorkflow workflow) {
         HibernateTemplate hibernateTemplate =3D getHibernateTemplate();
         hibernateTemplate.setFlushMode(HibernateTemplate.FLUSH_AUTO);
-        try {
-            hibernateTemplate.save(workflow);
-            hibernateTemplate.flush();
-        } catch (ConstraintViolationException e) {
-            hibernateTemplate.merge(workflow);
-            hibernateTemplate.flush();
+        synchronized(this) {
+            if (hibernateTemplate.get(JahiaWorkflow.class, workflow.getObj=
ectkey()) =3D=3D null) {
+                hibernateTemplate.save(workflow);
+                hibernateTemplate.flush();
+            } else {
+                hibernateTemplate.merge(workflow);
+                hibernateTemplate.flush();
+            }
         }
     }
 =


_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to