Modified: 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/FieldRestrictingPersonTest.java
 Fri Dec 28 17:43:23 2012
@@ -645,23 +645,23 @@ public class FieldRestrictingPersonTest 
         person.setPreferredName(PREFERRED_NAME);
         person.setStatus(STATUS);
         List<PersonProperty> properties = new ArrayList<PersonProperty>();
-        properties.add(new PersonPropertyImpl(1L, "gender", 
Person.Gender.female.toString(), null, "", false));
-        properties.add(new PersonPropertyImpl(1L, "drinker", 
Drinker.HEAVILY.toString(), null, "", false));
-        properties.add(new PersonPropertyImpl(1L, "age", AGE.toString(), null, 
"", false));
-        properties.add(new PersonPropertyImpl(1L, "birthday", BIRTHDAY_STRING, 
null, "", false));
-        properties.add(new PersonPropertyImpl(1L, "bodyType", BODY_BUILD, 
null, "build", false));
-        properties.add(new PersonPropertyImpl(1L, "bodyType", BODY_EYE_COLOR, 
null, "eyeColor", false));
-        properties.add(new PersonPropertyImpl(1L, "bodyType", "25.24", null, 
"height", false));
-        properties.add(new PersonPropertyImpl(1L, "ims", IM_1, null, 
IM_PROVIDER_1, true));
-        properties.add(new PersonPropertyImpl(1L, "ims", IM_2, null, 
IM_PROVIDER_2, false));
-        properties.add(new PersonPropertyImpl(1L, "emails", E_MAIL_ADDRESS_2, 
null, "personal", false));
-        properties.add(new PersonPropertyImpl(1L, "emails", E_MAIL_ADDRESS_3, 
null, "junk", true));
-        properties.add(new PersonPropertyImpl(1L, "activities", ACTIVITY_1, 
null, "", false));
-        properties.add(new PersonPropertyImpl(1L, "activities", ACTIVITY_2, 
null, "", false));
-        properties.add(new PersonPropertyImpl(1L, "profileSong", LINK_VALUE, 
LINK_TEXT, null, false));
-        properties.add(new PersonPropertyImpl(1L, "lookingFor", 
LookingFor.FRIENDS.toString(), null, null, false));
-        properties.add(new PersonPropertyImpl(1L, "currentLocation", 
QUALIFIER, null, null, null));
-        properties.add(new PersonPropertyImpl(1L, "account", IM_1, "1", 
IM_PROVIDER_1, false));
+        properties.add(new PersonPropertyImpl("1", "gender", 
Person.Gender.female.toString(), null, "", false));
+        properties.add(new PersonPropertyImpl("1", "drinker", 
Drinker.HEAVILY.toString(), null, "", false));
+        properties.add(new PersonPropertyImpl("1", "age", AGE.toString(), 
null, "", false));
+        properties.add(new PersonPropertyImpl("1", "birthday", 
BIRTHDAY_STRING, null, "", false));
+        properties.add(new PersonPropertyImpl("1", "bodyType", BODY_BUILD, 
null, "build", false));
+        properties.add(new PersonPropertyImpl("1", "bodyType", BODY_EYE_COLOR, 
null, "eyeColor", false));
+        properties.add(new PersonPropertyImpl("1", "bodyType", "25.24", null, 
"height", false));
+        properties.add(new PersonPropertyImpl("1", "ims", IM_1, null, 
IM_PROVIDER_1, true));
+        properties.add(new PersonPropertyImpl("1", "ims", IM_2, null, 
IM_PROVIDER_2, false));
+        properties.add(new PersonPropertyImpl("1", "emails", E_MAIL_ADDRESS_2, 
null, "personal", false));
+        properties.add(new PersonPropertyImpl("1", "emails", E_MAIL_ADDRESS_3, 
null, "junk", true));
+        properties.add(new PersonPropertyImpl("1", "activities", ACTIVITY_1, 
null, "", false));
+        properties.add(new PersonPropertyImpl("1", "activities", ACTIVITY_2, 
null, "", false));
+        properties.add(new PersonPropertyImpl("1", "profileSong", LINK_VALUE, 
LINK_TEXT, null, false));
+        properties.add(new PersonPropertyImpl("1", "lookingFor", 
LookingFor.FRIENDS.toString(), null, null, false));
+        properties.add(new PersonPropertyImpl("1", "currentLocation", 
QUALIFIER, null, null, null));
+        properties.add(new PersonPropertyImpl("1", "account", IM_1, "1", 
IM_PROVIDER_1, false));
         person.setProperties(properties);
         org.apache.rave.portal.model.Address address = new AddressImpl();
         address.setCountry(COUNTRY);

Modified: 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-core/src/test/java/org/apache/rave/opensocial/service/PersonServiceTest.java
 Fri Dec 28 17:43:23 2012
@@ -508,8 +508,8 @@ public class PersonServiceTest {
         dbPerson.setUsername(id);
         dbPerson.setDisplayName(DISPLAY_NAME);
         List<PersonProperty> properties = new ArrayList<PersonProperty>();
-        properties.add(new PersonPropertyImpl(1L, 
Person.Field.TAGS.toString(), TAG, null, null, null));
-        properties.add(new PersonPropertyImpl(2L, 
Person.Field.HAPPIEST_WHEN.toString(), HAPPIEST_WHEN, null, null, null));
+        properties.add(new PersonPropertyImpl("1", 
Person.Field.TAGS.toString(), TAG, null, null, null));
+        properties.add(new PersonPropertyImpl("2", 
Person.Field.HAPPIEST_WHEN.toString(), HAPPIEST_WHEN, null, null, null));
         dbPerson.setProperties(properties);
         return dbPerson;
     }

Modified: 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/pom.xml
 Fri Dec 28 17:43:23 2012
@@ -26,7 +26,7 @@
     <parent>
         <artifactId>rave-opensocial-provider</artifactId>
         <groupId>org.apache.rave</groupId>
-        <version>0.17-MONGO-SNAPSHOT</version>
+        <version>0.19-SNAPSHOT</version>
     </parent>
 
     <artifactId>rave-opensocial-server</artifactId>

Modified: 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/pom.xml
 Fri Dec 28 17:43:23 2012
@@ -26,7 +26,7 @@
     <parent>
         <groupId>org.apache.rave</groupId>
         <artifactId>rave-opensocial-server</artifactId>
-        <version>0.17-MONGO-SNAPSHOT</version>
+        <version>0.19-SNAPSHOT</version>
     </parent>
 
     <artifactId>rave-shindig</artifactId>

Modified: 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/resources/rave.shindig.properties
 Fri Dec 28 17:43:23 2012
@@ -248,6 +248,9 @@ org.apache.shindig.gadgets.servlet.longL
 # Defaults to simple.
 shindig.closure.compile.level=simple
 
+# Size of the compiler thread pool
+shindig.closure.compile.threadPoolSize=5
+
 # OAuth 2.0 authorization code, access token, and refresh token expiration 
times.
 # 5 * 60 * 1000 = 300000 = 5 minutes
 # 5 * 60 * 60 * 1000 = 18000000 = 5 hours
@@ -257,4 +260,8 @@ shindig.oauth2.accessTokenExpiration=180
 shindig.oauth2.refreshTokenExpiration=432000000
 
 # Allows unauthenticated requests to Shindig
-shindig.allowUnauthenticated=true
\ No newline at end of file
+shindig.allowUnauthenticated=true
+
+# Comma separated tags that need to have its relative path to be resolved as 
absolute.
+# Possible values are RESOURCES and HYPERLINKS
+shindig.gadgets.rewriter.absolutePath.tags=RESOURCES

Modified: 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-opensocial-provider/rave-opensocial-server/rave-shindig/src/main/webapp/WEB-INF/classes/containers/default/container.js
 Fri Dec 28 17:43:23 2012
@@ -75,7 +75,7 @@
 // Config param to load Opensocial data for social
 // preloads in data pipelining.  %host% will be
 // substituted with the current host.
-"gadgets.osDataUri" : "http://%host%${CONTEXT_ROOT}/rpc";,
+"gadgets.osDataUri" : "//%host%${CONTEXT_ROOT}/rpc",
 
 // Use an insecure security token by default
 //"gadgets.securityTokenType" : "insecure",
@@ -158,10 +158,16 @@
   "core.io" : {
     // Note: ${Cur['gadgets.uri.proxy.path']} is an open proxy. Be careful how 
you expose this!
     // Note: These urls should be protocol relative (start with //)
-    "proxyUrl" : 
"//${Cur['default.domain.unlocked.client']}${Cur['gadgets.uri.proxy.path']}?container=%container%&refresh=%refresh%&url=%url%%authz%%rewriteMime%",
+    "proxyUrl" : 
"//${Cur['default.domain.unlocked.client']}${Cur['gadgets.uri.proxy.path']}%filename%?container=%container%&refresh=%refresh%&url=%url%%authz%%rewriteMime%",
     "jsonProxyUrl" : 
"//${Cur['default.domain.locked.client']}${CONTEXT_ROOT}/gadgets/makeRequest",
     // Note: this setting MUST be supplied in every container config object, 
as there is no default if it is not supplied.
-    "unparseableCruft" : "throw 1; < don't be evil' >"
+    "unparseableCruft" : "throw 1; < don't be evil' >",
+
+    // This variable is needed during the config init to parse config 
augmentation
+    "jsPath" : "${Cur['gadgets.uri.js.path']}",
+
+    // interval in milliseconds used to poll xhr request for the readyState
+    "xhrPollIntervalMs" : 50
   },
   "views" : {
     "profile" : {
@@ -231,14 +237,14 @@
     ]
   },
   "minimessage": {
-      "css": [
-        ".mmlib_table {",
-        "width: 100%;",
-        "font: bold 9px arial,sans-serif;",
-        "background-color: #fff4c2;",
-        "border-collapse: separate;",
-        "border-spacing: 0px;",
-        "padding: 1px 0px;",
+    "css": [
+      ".mmlib_table {",
+      "width: 100%;",
+      "font: bold 9px arial,sans-serif;",
+      "background-color: #fff4c2;",
+      "border-collapse: separate;",
+      "border-spacing: 0px;",
+      "padding: 1px 0px;",
       "}",
       ".mmlib_xlink {",
         "font: normal 1.1em arial,sans-serif;",
@@ -246,7 +252,7 @@
         "color: #0000cc;",
         "cursor: pointer;",
       "}"
-     ]
+    ]
   },
   "rpc" : {
     // Path to the relay file. Automatically appended to the parent
@@ -322,6 +328,9 @@
     "relayPath": "${CONTEXT_ROOT}/gadgets/files/container/rpc_relay.html",
 
     //Enables/Disables the RPC arbitrator functionality in the common container
-    "enableRpcArbitration": false
+    "enableRpcArbitration": false,
+
+    // This variable is needed during the container feature init.
+    "jsPath" : "${Cur['gadgets.uri.js.path']}"
   }
 }}

Modified: rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml (original)
+++ rave/branches/mongo/rave-providers/rave-w3c-provider/pom.xml Fri Dec 28 
17:43:23 2012
@@ -26,7 +26,7 @@
     <parent>
         <artifactId>rave-providers</artifactId>
         <groupId>org.apache.rave</groupId>
-        <version>0.17-MONGO-SNAPSHOT</version>
+        <version>0.19-SNAPSHOT</version>
     </parent>
 
     <artifactId>rave-w3c-provider</artifactId>

Modified: 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/service/impl/W3CWidget.java
 Fri Dec 28 17:43:23 2012
@@ -34,6 +34,10 @@ public class W3CWidget extends WidgetImp
        
        public W3CWidget() {
        }
+
+    public W3CWidget(String id) {
+        super(id);
+    }
        
        /**
         * @return the width

Modified: 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/main/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRenderer.java
 Fri Dec 28 17:43:23 2012
@@ -27,6 +27,7 @@ import org.apache.rave.portal.web.render
 import org.apache.rave.portal.web.renderer.RenderScope;
 import org.apache.rave.portal.web.renderer.ScriptLocation;
 import org.apache.rave.portal.web.renderer.ScriptManager;
+import org.apache.rave.portal.web.renderer.model.RegionWidgetWrapper;
 import org.apache.rave.portal.web.renderer.model.RenderContext;
 import org.apache.rave.provider.w3c.service.impl.W3CWidget;
 import org.json.JSONException;
@@ -86,18 +87,19 @@ public class W3cWidgetRenderer implement
     /**
      * Renders a {@link org.apache.rave.portal.model.RegionWidget} as HTML 
markup
      *
-     * @param item RegionWidgetImpl to render
+     * @param wrapper RegionWidgetImpl to render
      * @param context
      * @return valid HTML markup
      */
     @Override
-    public String render(RegionWidget item, RenderContext context) {
-        Widget widget = item.getWidget();
+    public String render(RegionWidgetWrapper wrapper, RenderContext context) {
+        Widget widget = wrapper.getWidget();
+        RegionWidget item = wrapper.getRegionWidget();
         if(!WIDGET_TYPE.equals(widget.getType())) {
             throw new NotSupportedException("Invalid widget type passed to 
renderer: " + widget.getType());
         }
 
-        String widgetScript = getWidgetScript(item);
+        String widgetScript = getWidgetScript(item, widget);
         // the key is based off the RegionWidget.id to ensure uniqueness
         String key = REGISTER_WIDGET_KEY + "-" + item.getId();
         scriptManager.registerScriptBlock(key, widgetScript, 
ScriptLocation.AFTER_RAVE, RenderScope.CURRENT_REQUEST, context);
@@ -108,10 +110,12 @@ public class W3cWidgetRenderer implement
 
     /**
      * Create a widget script block
+     *
      * @param item the RegionWidget to create a script block for
+     * @param widget
      * @return the script block
      */
-    private String getWidgetScript(RegionWidget item) {
+    private String getWidgetScript(RegionWidget item, Widget widget) {
         User user = userService.getAuthenticatedUser();
 
         //
@@ -122,7 +126,7 @@ public class W3cWidgetRenderer implement
         //
         // Get the Rave Widget for this regionWidget instance
         //
-        W3CWidget contextualizedWidget = (W3CWidget) 
widgetService.getWidget(user, sharedDataKey, item.getWidget());
+        W3CWidget contextualizedWidget = (W3CWidget) 
widgetService.getWidget(user, sharedDataKey, widget);
 
         //
         // TODO make this do something useful; currently these preferences 
aren't
@@ -151,7 +155,7 @@ public class W3cWidgetRenderer implement
 
         // get attributes about the sub page this regionWidget is on.  This is 
needed to assist the client in
         // determining which gadgets are on visible tabs/sub pages initially 
to make widget rendering more efficient
-        Long pageId = null;
+        String pageId = null;
         String pageName = "";
         boolean isDefault = false;
         Page page =  item.getRegion().getPage();
@@ -174,7 +178,7 @@ public class W3cWidgetRenderer implement
                 height,
                 width,
                 item.isCollapsed(),
-                item.getWidget().getId(),
+                item.getWidgetId(),
                 item.isLocked(),
                 item.isHideChrome(),
                 pageId,

Modified: 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java
URL: 
http://svn.apache.org/viewvc/rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java?rev=1426593&r1=1426592&r2=1426593&view=diff
==============================================================================
--- 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java
 (original)
+++ 
rave/branches/mongo/rave-providers/rave-w3c-provider/src/test/java/org/apache/rave/provider/w3c/web/renderer/W3cWidgetRendererTest.java
 Fri Dec 28 17:43:23 2012
@@ -26,6 +26,7 @@ import org.apache.rave.portal.service.Us
 import org.apache.rave.portal.service.WidgetProviderService;
 import org.apache.rave.portal.web.renderer.Renderer;
 import org.apache.rave.portal.web.renderer.ScriptManager;
+import org.apache.rave.portal.web.renderer.model.RegionWidgetWrapper;
 import org.apache.rave.portal.web.renderer.model.RenderContext;
 import org.apache.rave.provider.w3c.Constants;
 import org.apache.rave.provider.w3c.service.impl.W3CWidget;
@@ -46,7 +47,7 @@ public class W3cWidgetRendererTest {
 
     private static final String VALID_WIDGET_URL = 
"http://example.com/widgets/1";;
     private static final String VALID_WIDGET_INSTANCE_URL = 
"http://example.com/widgetinstances/1";;
-    private Renderer<RegionWidget> renderer;
+    private Renderer<RegionWidgetWrapper> renderer;
     private WidgetProviderService wookieService;
     private UserService userService;
     private RenderContext renderContext;
@@ -59,7 +60,7 @@ public class W3cWidgetRendererTest {
         wookieService = createNiceMock(WidgetProviderService.class);
         userService = createNiceMock(UserService.class);
         scriptManager = createNiceMock(ScriptManager.class);
-        renderer = new W3cWidgetRenderer(wookieService, userService, 
scriptManager);  
+        renderer = new W3cWidgetRenderer(wookieService, userService, 
scriptManager);
     }
 
     @Test
@@ -69,13 +70,13 @@ public class W3cWidgetRendererTest {
 
     @Test
     public void render_valid() {
-        final long REGION_ID = 222L;
-        final long REGION_WIDGET_ID = 444L;
-        final long VALID_SUBPAGE_ID = 778899L;
+        final String REGION_ID = "222";
+        final String REGION_WIDGET_ID = "444";
+        final String VALID_SUBPAGE_ID = "778899";
         final String VALID_SUBPAGE_NAME = "My Activity";
         final boolean VALID_IS_DEFAULT_SUBPAGE = true;
 
-        User user = new UserImpl(9999L, "testUser");
+        User user = new UserImpl("9999", "testUser");
         expect(userService.getAuthenticatedUser()).andReturn(user);
         replay(userService);
 
@@ -88,36 +89,38 @@ public class W3cWidgetRendererTest {
         subPage.setPageType(PageType.SUB_PAGE);
         page.getSubPages().add(subPage);
 
-        W3CWidget w = new W3CWidget();
+        W3CWidget w = new W3CWidget("1");
         w.setType(Constants.WIDGET_TYPE);
         w.setUrl("http://example.com/widgets/1";);
         Region region = new RegionImpl(REGION_ID);
         region.setPage(subPage);
-        RegionWidget rw = new RegionWidgetImpl();
-        rw.setId(REGION_WIDGET_ID);
-        rw.setWidget(w);
+        RegionWidget rw = new RegionWidgetImpl(REGION_WIDGET_ID);
+        rw.setWidgetId(w.getId());
         rw.setRegion(region);
 
         W3CWidget wookieWidget = new W3CWidget();
         wookieWidget.setUrl(VALID_WIDGET_INSTANCE_URL);
 
-        expect(wookieService.getWidget(eq(user), eq(rw.getId().toString()), 
isA(Widget.class))).andReturn(wookieWidget);
+        RegionWidgetWrapper wrapper = new RegionWidgetWrapper(w, rw);
+
+        expect(wookieService.getWidget(eq(user), eq(rw.getId()), 
isA(Widget.class))).andReturn(wookieWidget);
         replay(wookieService);
 
-        String placeholder = renderer.render(rw, renderContext);
+        String placeholder = renderer.render(wrapper, renderContext);
         assertEquals("Script block for widget is incorrect", "<!-- 
RegionWidget " + REGION_WIDGET_ID + " placeholder -->", placeholder);
     }
 
     @Test(expected = NotSupportedException.class)
     public void render_invalid() {
-        Widget w = new WidgetImpl();
+        Widget w = new WidgetImpl("1");
         w.setType("NONE");
         w.setUrl(VALID_WIDGET_URL);
-        RegionWidget rw = new RegionWidgetImpl();
-        rw.setId(1L);
-        rw.setWidget(w);
+        RegionWidget rw = new RegionWidgetImpl("1");
+        rw.setWidgetId(w.getId());
+
+        RegionWidgetWrapper wrapper = new RegionWidgetWrapper(w, rw);
 
         RenderContext renderContext = createNiceMock(RenderContext.class);
-        renderer.render(rw, renderContext);
+        renderer.render(wrapper, renderContext);
     }
 }


Reply via email to