[jboss-svn-commits] JBoss Portal SVN: r5222 - in trunk/wsrp/src/main/org/jboss/portal: test/wsrp test/wsrp/v1/consumer wsrp/consumer

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Sep 18 18:01:29 EDT 2006


Author: chris.laprun at jboss.com
Date: 2006-09-18 18:01:24 -0400 (Mon, 18 Sep 2006)
New Revision: 5222

Modified:
   trunk/wsrp/src/main/org/jboss/portal/test/wsrp/TestWSRPProducerImpl.java
   trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/MarkupTestCase.java
   trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/SOF.java
   trunk/wsrp/src/main/org/jboss/portal/wsrp/consumer/RenderHandler.java
Log:
- JBPORTAL-1050: fix error when returned markup was empty. Added test case.

Modified: trunk/wsrp/src/main/org/jboss/portal/test/wsrp/TestWSRPProducerImpl.java
===================================================================
--- trunk/wsrp/src/main/org/jboss/portal/test/wsrp/TestWSRPProducerImpl.java	2006-09-18 21:47:42 UTC (rev 5221)
+++ trunk/wsrp/src/main/org/jboss/portal/test/wsrp/TestWSRPProducerImpl.java	2006-09-18 22:01:24 UTC (rev 5222)
@@ -22,6 +22,7 @@
 package org.jboss.portal.test.wsrp;
 
 import org.jboss.invocation.Invocation;
+import org.jboss.portal.jems.as.system.AbstractJBossService;
 import org.jboss.portal.test.wsrp.v1.consumer.SOF;
 import org.jboss.portal.wsrp.WSRPConstants;
 import org.jboss.portal.wsrp.WSRPTypeFactory;
@@ -75,7 +76,6 @@
 import org.jboss.portal.wsrp.core.UnsupportedModeFault;
 import org.jboss.portal.wsrp.core.UnsupportedWindowStateFault;
 import org.jboss.portal.wsrp.core.UpdateResponse;
-import org.jboss.portal.jems.as.system.AbstractJBossService;
 
 import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServletResponse;
@@ -201,13 +201,12 @@
       String handle = getMarkup.getPortletContext().getPortletHandle();
       String markupString = null;
       String sessionId = getMarkup.getRuntimeContext().getSessionID();
+
       if (SOF.PORTLET_HANDLE_1.equals(handle))
       {
          markupString = "portlet1:";
       }
-
-      // markup for SOF.PORTLET_HANDLE_2 simulates using the session
-      if (SOF.PORTLET_HANDLE_2.equals(handle))
+      else if (SOF.PORTLET_HANDLE_2.equals(handle)) // markup for SOF.PORTLET_HANDLE_2 simulates using the session
       {
          // if we have a session, increments count to simulate session usage
          if (SESSION_ID.equals(sessionId))
@@ -226,6 +225,15 @@
          markupString += ":" + ns;
       }
 
+      if (SOF.NULL_MARKUP_PORTLET_HANDLE.equals(handle))
+      {
+         markupString = null;
+      }
+      else if (SOF.EMPTY_MARKUP_PORTLET_HANDLE.equals(handle))
+      {
+         markupString = "";
+      }
+
       MarkupContext markupContext = WSRPTypeFactory.createMarkupContext("text/html", markupString);
       markupContext.setRequiresUrlRewriting(Boolean.TRUE);
 

Modified: trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/MarkupTestCase.java
===================================================================
--- trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/MarkupTestCase.java	2006-09-18 21:47:42 UTC (rev 5221)
+++ trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/MarkupTestCase.java	2006-09-18 22:01:24 UTC (rev 5222)
@@ -22,14 +22,15 @@
 
 package org.jboss.portal.test.wsrp.v1.consumer;
 
+import org.jboss.portal.portlet.PortletContext;
 import org.jboss.portal.portlet.invocation.ActionInvocation;
 import org.jboss.portal.portlet.invocation.PortletInvocation;
 import org.jboss.portal.portlet.invocation.RenderInvocation;
+import org.jboss.portal.portlet.result.ErrorResult;
 import org.jboss.portal.portlet.result.FragmentResult;
 import org.jboss.portal.portlet.result.RenderResult;
 import org.jboss.portal.portlet.result.Result;
 import org.jboss.portal.portlet.spi.WindowContext;
-import org.jboss.portal.portlet.PortletContext;
 import org.jboss.portal.test.wsrp.TestWSRPProducerImpl;
 import org.jboss.portal.wsrp.consumer.ProducerSessionInformation;
 import org.jboss.portal.wsrp.core.CookieProtocol;
@@ -49,6 +50,21 @@
       super();
    }
 
+   public void testEmptyAndNullRender() throws Exception
+   {
+      RenderInvocation render = createRenderInvocation(SOF.NULL_MARKUP_PORTLET_HANDLE);
+
+      consumer.invoke(render);
+
+      assertTrue(render.getResult() instanceof ErrorResult);
+
+      render = createRenderInvocation(SOF.EMPTY_MARKUP_PORTLET_HANDLE);
+
+      consumer.invoke(render);
+
+      checkRenderResult(render, "");
+   }
+
    public void testRender() throws Exception
    {
       RenderInvocation render = createRenderInvocation(SOF.PORTLET_HANDLE_1);

Modified: trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/SOF.java
===================================================================
--- trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/SOF.java	2006-09-18 21:47:42 UTC (rev 5221)
+++ trunk/wsrp/src/main/org/jboss/portal/test/wsrp/v1/consumer/SOF.java	2006-09-18 22:01:24 UTC (rev 5222)
@@ -41,8 +41,9 @@
    public static final String SAMPLE_KEYWORD = "keyword";
    public static final String PORTLET_HANDLE_1 = "SamplePortletHandle";
    public static final String PORTLET_HANDLE_2 = "SecondPortletHandle";
+   public static final String EMPTY_MARKUP_PORTLET_HANDLE = "empty";
+   public static final String NULL_MARKUP_PORTLET_HANDLE = "null";
 
-
    /**
     * Create the dummiest form of LocalizedString
     *

Modified: trunk/wsrp/src/main/org/jboss/portal/wsrp/consumer/RenderHandler.java
===================================================================
--- trunk/wsrp/src/main/org/jboss/portal/wsrp/consumer/RenderHandler.java	2006-09-18 21:47:42 UTC (rev 5221)
+++ trunk/wsrp/src/main/org/jboss/portal/wsrp/consumer/RenderHandler.java	2006-09-18 22:01:24 UTC (rev 5222)
@@ -97,7 +97,7 @@
             new IllegalArgumentException("Markup response cannot contain both string and binary markup.")));
       }
 
-      if (markup != null)
+      if (markup != null && markup.length() > 0)
       {
          markup = processMarkup(markup, invocation, Boolean.TRUE.equals(markupContext.getRequiresUrlRewriting()));
       }




More information about the jboss-svn-commits mailing list