You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rave.apache.org by mf...@apache.org on 2012/06/25 23:11:24 UTC

svn commit: r1353746 - in /rave/branches/model_interfaces/rave-components/rave-jpa/src: main/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepository.java test/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepositoryTest.java

Author: mfranklin
Date: Mon Jun 25 21:11:23 2012
New Revision: 1353746

URL: http://svn.apache.org/viewvc?rev=1353746&view=rev
Log:
Fixed issue with referential integrity error when creating tags. (RAVE-625)

Modified:
    rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepository.java
    rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepositoryTest.java

Modified: rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepository.java
URL: http://svn.apache.org/viewvc/rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepository.java?rev=1353746&r1=1353745&r2=1353746&view=diff
==============================================================================
--- rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepository.java (original)
+++ rave/branches/model_interfaces/rave-components/rave-jpa/src/main/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepository.java Mon Jun 25 21:11:23 2012
@@ -15,6 +15,7 @@
  */
 package org.apache.rave.portal.repository.impl;
 
+import org.apache.rave.portal.model.JpaTag;
 import org.apache.rave.portal.model.JpaWidgetTag;
 import org.apache.rave.portal.model.WidgetTag;
 import org.apache.rave.portal.model.conversion.JpaWidgetTagConverter;
@@ -62,6 +63,11 @@ public class JpaWidgetTagRepository impl
     @Override
     public WidgetTag save(WidgetTag item) {
         JpaWidgetTag widgetTag = converter.convert(item);
+        //We know this cast will succeed since we are dealing with a JpaWidgetTag
+        //since  this is a reciprocal relationship, we need to make sure we save one side of it first
+        JpaTag tag = (JpaTag)widgetTag.getTag();
+        item.setTag(saveOrUpdate(tag.getEntityId(), manager, tag));
+
         return saveOrUpdate(widgetTag.getEntityId(), manager, widgetTag);
     }
 

Modified: rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepositoryTest.java
URL: http://svn.apache.org/viewvc/rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepositoryTest.java?rev=1353746&r1=1353745&r2=1353746&view=diff
==============================================================================
--- rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepositoryTest.java (original)
+++ rave/branches/model_interfaces/rave-components/rave-jpa/src/test/java/org/apache/rave/portal/repository/impl/JpaWidgetTagRepositoryTest.java Mon Jun 25 21:11:23 2012
@@ -98,7 +98,7 @@ public class JpaWidgetTagRepositoryTest 
     @Rollback(true)
     public void save() {
         WidgetTag widgetTag = new JpaWidgetTag();
-        JpaTag tag = new JpaTag(100L, "boing");
+        JpaTag tag = new JpaTag(null, "boing");
         widgetTag.setTag(tag);
         widgetTag.setWidgetId(2L);
         widgetTag.setCreatedDate(new Date());