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/12/29 01:10:29 UTC

svn commit: r1426671 - in /rave/branches/mongo: ./ rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/ rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/util/ rave-components/rave-mongodb/src/m...

Author: mfranklin
Date: Sat Dec 29 00:10:28 2012
New Revision: 1426671

URL: http://svn.apache.org/viewvc?rev=1426671&view=rev
Log:
fixed issues with string id

Modified:
    rave/branches/mongo/   (props changed)
    rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java
    rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java
    rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/util/MongoDbModelUtil.java
    rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoModelTemplate.java
    rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoTagTemplate.java
    rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/marshaller-applicationContext.xml
    rave/branches/mongo/rave-portal-resources/src/main/resources_mongo/db/initial-data.json

Propchange: rave/branches/mongo/
------------------------------------------------------------------------------
  Merged /rave/trunk:r1426594-1426640

Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageConverter.java Sat Dec 29 00:10:28 2012
@@ -32,6 +32,7 @@ import org.springframework.stereotype.Co
 
 import java.util.List;
 
+import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateLongId;
 import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateId;
 
 @Component
@@ -120,7 +121,8 @@ public class MongoDbPageConverter implem
 
     public RegionWidgetImpl convert(RegionWidget sourceRegionWidget) {
         RegionWidgetImpl regionWidget = sourceRegionWidget instanceof RegionWidgetImpl ? (RegionWidgetImpl) sourceRegionWidget : new RegionWidgetImpl();
-        regionWidget.setId(sourceRegionWidget.getId() == null ? generateId() : sourceRegionWidget.getId());
+        //RegionWidgetIds MUST be a Long due to the mapping of ModuleID in Shindig.
+        regionWidget.setId(sourceRegionWidget.getId() == null ? generateLongId().toString() : sourceRegionWidget.getId());
         regionWidget.setWidgetId(sourceRegionWidget.getWidgetId());
         regionWidget.setRegion(null);
         regionWidget.setPreferences(sourceRegionWidget.getPreferences());
@@ -131,8 +133,8 @@ public class MongoDbPageConverter implem
 
     private void updatePreferences(RegionWidgetImpl regionWidget) {
         List<RegionWidgetPreference> converted = Lists.newArrayList();
-        if(regionWidget.getPreferences() != null) {
-            for(RegionWidgetPreference preference : regionWidget.getPreferences()) {
+        if (regionWidget.getPreferences() != null) {
+            for (RegionWidgetPreference preference : regionWidget.getPreferences()) {
                 converted.add(convert(preference));
             }
         }
@@ -147,8 +149,12 @@ public class MongoDbPageConverter implem
     }
 
     private void hydrate(Region region) {
-        for (RegionWidget regionWidget : region.getRegionWidgets()) {
-            hydrate((RegionWidgetImpl) regionWidget, region);
+        if (region.getRegionWidgets() == null) {
+            region.setRegionWidgets(Lists.<RegionWidget>newArrayList());
+        } else {
+            for (RegionWidget regionWidget : region.getRegionWidgets()) {
+                hydrate((RegionWidgetImpl) regionWidget, region);
+            }
         }
     }
 

Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/conversion/impl/MongoDbPageTemplateConverter.java Sat Dec 29 00:10:28 2012
@@ -26,12 +26,15 @@ import org.apache.rave.portal.model.Page
 import org.apache.rave.portal.model.PageTemplateWidget;
 import org.apache.rave.portal.model.conversion.HydratingModelConverter;
 import org.apache.rave.portal.model.impl.PageTemplateRegionImpl;
+import org.apache.rave.portal.model.impl.PageTemplateWidgetImpl;
 import org.apache.rave.portal.repository.PageLayoutRepository;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
 import java.util.List;
 
+import static org.apache.rave.portal.model.util.MongoDbModelUtil.generateId;
+
 @Component
 public class MongoDbPageTemplateConverter implements HydratingModelConverter<PageTemplate, MongoDbPageTemplate> {
 
@@ -97,12 +100,35 @@ public class MongoDbPageTemplateConverte
     private PageTemplateRegion convert(PageTemplateRegion region) {
         PageTemplateRegionImpl converted = region instanceof PageTemplateRegionImpl ? ((PageTemplateRegionImpl) region) : new PageTemplateRegionImpl();
         updateProperties(region, converted);
-        converted.setPageTemplateWidgets(region.getPageTemplateWidgets());
+
+        if (region.getPageTemplateWidgets() != null) {
+            List<PageTemplateWidget> convertedWidgets = Lists.newArrayList();
+            for (PageTemplateWidget widget : region.getPageTemplateWidgets()) {
+                convertedWidgets.add(convert(widget));
+            }
+            converted.setPageTemplateWidgets(convertedWidgets);
+        }
         return converted;
     }
 
+    private PageTemplateWidget convert(PageTemplateWidget widget) {
+        PageTemplateWidgetImpl converted = widget instanceof PageTemplateWidgetImpl ? ((PageTemplateWidgetImpl) widget) : new PageTemplateWidgetImpl();
+        updateProperties(widget, converted);
+        return converted;
+    }
+
+
+    private void updateProperties(PageTemplateWidget source, PageTemplateWidgetImpl converted) {
+        converted.setId(source.getId() == null ? generateId() : source.getId());
+        converted.setHideChrome(source.isHideChrome());
+        converted.setPageTemplateRegion(null);
+        converted.setRenderSeq(source.getRenderSeq());
+        converted.setWidgetId(source.getWidgetId());
+        converted.setLocked(source.isLocked());
+    }
+
     private void updateProperties(PageTemplateRegion source, PageTemplateRegionImpl converted) {
-        converted.setId(source.getId());
+        converted.setId(source.getId() == null ? generateId() : source.getId());
         converted.setRenderSequence(source.getRenderSequence());
         converted.setPageTemplate(null);
         converted.setLocked(source.isLocked());

Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/util/MongoDbModelUtil.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/util/MongoDbModelUtil.java?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/util/MongoDbModelUtil.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/model/util/MongoDbModelUtil.java Sat Dec 29 00:10:28 2012
@@ -19,6 +19,7 @@
 
 package org.apache.rave.portal.model.util;
 
+import java.util.Random;
 import java.util.UUID;
 
 /**
@@ -29,6 +30,11 @@ public class MongoDbModelUtil {
     private MongoDbModelUtil(){}
 
     public static String generateId() {
-        return UUID.randomUUID().toString();
+        return UUID.randomUUID().toString().replace("-", "_");
+    }
+
+    public static Long generateLongId() {
+        Random random = new Random();
+        return Math.abs(random.nextLong());
     }
 }

Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoModelTemplate.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoModelTemplate.java?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoModelTemplate.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoModelTemplate.java Sat Dec 29 00:10:28 2012
@@ -65,7 +65,7 @@ public class MongoModelTemplate<T, E ext
     public T get(String id) {
         E fromDb = mongoTemplate.findById(id, dbType, collection);
         if(fromDb == null) {
-            throw new IllegalStateException("Could not find requested page: " + id);
+            throw new IllegalStateException(String.format("Could not find requested %2$s instance: %1$s", id, dbType));
         }
         return hydrate(fromDb);
     }

Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoTagTemplate.java
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoTagTemplate.java?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoTagTemplate.java (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/java/org/apache/rave/portal/repository/impl/MongoTagTemplate.java Sat Dec 29 00:10:28 2012
@@ -3,12 +3,14 @@ package org.apache.rave.portal.repositor
 import org.apache.rave.portal.model.Tag;
 import org.apache.rave.portal.model.impl.TagImpl;
 import org.apache.rave.portal.repository.MongoTagOperations;
+import org.springframework.stereotype.Component;
 
 import static org.apache.rave.portal.repository.util.CollectionNames.TAG_COLLECTION;
 
 /**
  *
  */
+@Component
 public class MongoTagTemplate extends MongoModelTemplate<Tag, TagImpl> implements MongoTagOperations {
     public MongoTagTemplate() {
         super(Tag.class, TagImpl.class, TAG_COLLECTION);

Modified: rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/marshaller-applicationContext.xml
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/marshaller-applicationContext.xml?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/marshaller-applicationContext.xml (original)
+++ rave/branches/mongo/rave-components/rave-mongodb/src/main/resources/org/apache/rave/marshaller-applicationContext.xml Sat Dec 29 00:10:28 2012
@@ -29,7 +29,7 @@
         <oxm:class-to-be-bound name="org.apache.rave.portal.model.MongoDbUser"/>
         <oxm:class-to-be-bound name="org.apache.rave.portal.model.MongoDbPage"/>
         <oxm:class-to-be-bound name="org.apache.rave.portal.model.impl.RegionImpl"/>
-        <oxm:class-to-be-bound name="org.apache.rave.portal.model.MongoDbRegionWidget"/>
+        <oxm:class-to-be-bound name="org.apache.rave.portal.model.impl.RegionWidgetImpl"/>
         <oxm:class-to-be-bound name="org.apache.rave.portal.model.impl.RegionWidgetPreferenceImpl"/>
         <oxm:class-to-be-bound name="org.apache.rave.portal.model.MongoDbWidget"/>
         <oxm:class-to-be-bound name="org.apache.rave.portal.web.model.RegionWidgetPreferenceListWrapper"/>

Modified: rave/branches/mongo/rave-portal-resources/src/main/resources_mongo/db/initial-data.json
URL: http://svn.apache.org/viewvc/rave/branches/mongo/rave-portal-resources/src/main/resources_mongo/db/initial-data.json?rev=1426671&r1=1426670&r2=1426671&view=diff
==============================================================================
--- rave/branches/mongo/rave-portal-resources/src/main/resources_mongo/db/initial-data.json (original)
+++ rave/branches/mongo/rave-portal-resources/src/main/resources_mongo/db/initial-data.json Sat Dec 29 00:10:28 2012
@@ -1266,517 +1266,42 @@
     {
         "id": 1,
         "text": "Technology",
-        "createdUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
+        "createdUserId": "1",
         "createdDate": 1326949200000,
-        "lastModifiedUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
-        "lastModifiedDate": 1326949200000,
-        "id": 1
+        "lastModifiedUserId": "1",
+        "lastModifiedDate": 1326949200000
     },
     {
         "id": 2,
         "text": "News",
-        "createdUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
+        "createdUsedId": "1",
         "createdDate": 1326949200000,
-        "lastModifiedUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
-        "lastModifiedDate": 1326949200000,
-        "id": 2
+        "lastModifiedUserId": "1",
+        "lastModifiedDate": 1326949200000
     },
     {
         "id": 3,
         "text": "Travel",
-        "createdUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
+        "createdUserId": "1",
         "createdDate": 1326949200000,
-        "lastModifiedUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
-        "lastModifiedDate": 1326949200000,
-        "id": 3
+        "lastModifiedUserId": "1",
+        "lastModifiedDate": 1326949200000
     },
     {
         "id": 4,
         "text": "Projects",
-        "createdUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
+        "createdUserId": "1",
         "createdDate": 1326949200000,
-        "lastModifiedUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
-        "lastModifiedDate": 1326949200000,
-        "id": 4
+        "lastModifiedUserId": "1",
+        "lastModifiedDate": 1326949200000
     },
     {
         "id": 5,
         "text": "Communications",
-        "createdUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
+        "createdUserId": "1",
         "createdDate": 1326949200000,
-        "lastModifiedUser": {
-            "id": 1,
-            "username": "canonical",
-            "email": "canonical@example.com",
-            "displayName": "Canonical User",
-            "additionalName": null,
-            "familyName": "User",
-            "givenName": "Canonical",
-            "honorificPrefix": null,
-            "honorificSuffix": null,
-            "preferredName": null,
-            "aboutMe": null,
-            "status": "Single",
-            "addresses": [],
-            "organizations": [],
-            "properties": [],
-            "groups": [],
-            "password": "$2a$10$TkEgze5kLy9nRlfd8PT1zunh6P1ND8WPjLojFjAMNgZMu1D9D1n4.",
-            "expired": false,
-            "locked": false,
-            "enabled": true,
-            "openId": null,
-            "forgotPasswordHash": null,
-            "forgotPasswordTime": null,
-            "defaultPageLayout": {
-                "id": 4,
-                "code": "columns_3",
-                "numberOfRegions": 3,
-                "renderSequence": 3,
-                "userSelectable": true
-            },
-            "confirmPassword": null,
-            "defaultPageLayoutCode": null,
-            "authorities": [
-                {
-                    "id": 2,
-                    "authority": "ROLE_ADMIN",
-                    "users": [],
-                    "defaultForNewUser": false
-                }
-            ],
-            "pageUsers": [],
-            "widgetTags": [],
-            "id": 1,
-            "accountNonLocked": true,
-            "credentialsNonExpired": true,
-            "accountNonExpired": true
-        },
-        "lastModifiedDate": 1326949200000,
-        "id": 5
+        "lastModifiedUserId":"1",
+        "lastModifiedDate": 1326949200000
     }
 ],
     "pageTemplates": [
@@ -1810,49 +1335,25 @@
                             {
                                 "id": 3,
                                 "pageTemplateRegion": null,
-                                "widget": {
-                                    "id" : 15,
-                                    "title": "Favorite Websites",
-                                    "url": "http://localhost:8080/demogadgets/favorite_websites.xml",
-                                    "type": "OpenSocial",
-                                    "author": "Anthony Carlucci",
-                                    "description": "Static widget of favorite websites for demoing on the Person Profile page",
-                                    "disableRendering": false,
-                                    "featured": false,
-                                    "status": "PUBLISHED"
-                                },
+                                "widgetId": "15",
                                 "locked": true,
                                 "hideChrome": false,
-                                "id": 3,
                                 "renderSeq": 0
                             },
                             {
                                 "id": 4,
                                 "pageTemplateRegion": null,
-                                "widget": {
-                                    "id" :14,
-                                    "title": "Current Schedule",
-                                    "url": "http://localhost:8080/demogadgets/schedule.xml",
-                                    "type": "OpenSocial",
-                                    "author": "Anthony Carlucci",
-                                    "description": "Static widget of a schedule for demoing on the Person Profile page",
-                                    "disableRendering": false,
-                                    "featured": false,
-                                    "status": "PUBLISHED"
-                                },
+                                "widgetId": "14",
                                 "locked": true,
                                 "hideChrome": false,
-                                "id": 4,
                                 "renderSeq": 1
                             }
                         ],
-                        "locked": true,
-                        "id": 2
+                        "locked": true
                     }
                 ],
                 "renderSequence": 0,
-                "defaultTemplate": false,
-                "id": 2
+                "defaultTemplate": false
             },
             {
                 "id": 3,
@@ -1877,30 +1378,17 @@
                             {
                                 "id": 5,
                                 "pageTemplateRegion": null,
-                                "widget": {
-                                    "id": 3,
-                                    "title": "My Activity",
-                                    "url": "http://localhost:8080/demogadgets/my_activity.xml",
-                                    "type": "OpenSocial",
-                                    "author": "Anthony Carlucci",
-                                    "description": "Static widget of activities for demoing on the Person Profile page",
-                                    "disableRendering": false,
-                                    "featured": false,
-                                    "status": "PUBLISHED"
-                                },
+                                "widgetId": "3",
                                 "locked": true,
                                 "hideChrome": false,
-                                "id": 5,
                                 "renderSeq": 0
                             }
                         ],
-                        "locked": true,
-                        "id": 3
+                        "locked": true
                     }
                 ],
                 "renderSequence": 1,
-                "defaultTemplate": false,
-                "id": 3
+                "defaultTemplate": false
             }
         ],
         "pageLayout": {
@@ -1919,49 +1407,25 @@
                     {
                         "id": 1,
                         "pageTemplateRegion": null,
-                        "widget": {
-                            "id": 16,
-                            "title": "My Groups",
-                            "url": "http://localhost:8080/demogadgets/my_groups.xml",
-                            "type": "OpenSocial",
-                            "author": "Anthony Carlucci",
-                            "description": "Static widget of groups for demoing on the Person Profile page",
-                            "disableRendering": false,
-                            "featured": false,
-                            "status": "PUBLISHED"
-                        },
+                        "widgetId": "1",
                         "locked": true,
                         "hideChrome": true,
-                        "id": 1,
                         "renderSeq": 0
                     },
                     {
                         "id": 2,
                         "pageTemplateRegion": null,
-                        "widget": {
-                            "id": 17,
-                            "title": "My Experience",
-                            "url": "http://localhost:8080/demogadgets/my_experience.xml",
-                            "type": "OpenSocial",
-                            "author": "Anthony Carlucci",
-                            "description": "Static widget of experience for demoing on the Person Profile page",
-                            "disableRendering": false,
-                            "featured": false,
-                            "status": "PUBLISHED"
-                        },
+                        "widgetId": "17",
                         "locked": true,
                         "hideChrome": true,
-                        "id": 2,
                         "renderSeq": 1
                     }
                 ],
-                "locked": true,
-                "id": 1
+                "locked": true
             }
         ],
         "renderSequence": 0,
-        "defaultTemplate": true,
-        "id": 1
+        "defaultTemplate": true
     },
     {
         "id": 2,
@@ -1984,7 +1448,7 @@
                 "pageTemplateWidgets": [
                     {
                         "pageTemplateRegion": null,
-                        "widget": {"id": 2},
+                        "widgetId": "2",
                         "locked": false,
                         "hideChrome": false,
                         "id": 3,
@@ -1992,7 +1456,7 @@
                     },
                     {
                         "pageTemplateRegion": null,
-                        "widget": {"id": 7},
+                        "widgetId": "7",
                         "locked": false,
                         "hideChrome": false,
                         "id": 4,
@@ -2008,7 +1472,7 @@
                 "pageTemplateWidgets": [
                     {
                         "pageTemplateRegion": null,
-                        "widget": {"id": 10},
+                        "widgetId": "10",
                         "locked": false,
                         "hideChrome": false,
                         "id": 3,
@@ -2016,7 +1480,7 @@
                     },
                     {
                         "pageTemplateRegion": null,
-                        "widget": {"id": 23},
+                        "widgetId": "23",
                         "locked": false,
                         "hideChrome": false,
                         "id": 4,
@@ -2032,7 +1496,7 @@
                 "pageTemplateWidgets": [
                     {
                         "pageTemplateRegion": null,
-                        "widget": {"id": 11},
+                        "widgetId": "11",
                         "locked": false,
                         "hideChrome": false,
                         "id": 3,
@@ -2044,8 +1508,7 @@
             }
         ],
         "renderSequence": 0,
-        "defaultTemplate": true,
-        "id": 2
+        "defaultTemplate": true
     }
 ]
 }
\ No newline at end of file