You are viewing a plain text version of this content. The canonical link for it is here.
Posted to pluto-scm@portals.apache.org by ms...@apache.org on 2014/08/14 15:23:52 UTC

[17/48] Added 2nd request dispatcher test module that repeats basic dispatch testing for JSPs

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Render.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Render.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Render.java
index a23b3f2..d9f48d0 100644
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Render.java
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Render.java
@@ -26,6 +26,7 @@ import javax.xml.namespace.QName;
 import javax.portlet.*;
 import javax.portlet.filter.*;
 import javax.portlet.tck.beans.*;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
 import static javax.portlet.tck.constants.Constants.*;
 import static javax.portlet.PortletSession.*;
@@ -96,41 +97,56 @@ public class DispatcherTests_SPEC2_19_Render implements Portlet, ResourceServing
 
       // Create result objects for the tests
 
-      /* TestCase: SPEC2_19_Render_getDispatcher7                             */
+      /* TestCase: SPEC2_19_Render_dispatch1                                  */
+      /* Details: "The PortletContext getRequestDispatcher method returns a   */
+      /* PortletRequestDispatcher for a path within the portlet               */
+      /* application"                                                         */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_RENDER_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Render_dispatch2                                  */
       /* Details: "If the path provided to getRequestDispatcher method does   */
       /* not start with \"/\", the method returns null"                       */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_RENDER_GETDISPATCHER7);
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_RENDER_DISPATCH2);
       /* TODO: implement test */
-      tr0.writeTo(writer);
+      tr1.writeTo(writer);
 
-      /* TestCase: SPEC2_19_Render_getDispatcher8                             */
+      /* TestCase: SPEC2_19_Render_dispatch3                                  */
       /* Details: "If the path provided to getRequestDispatcher method ends   */
       /* with \"/\", the method returns null"                                 */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_RENDER_GETDISPATCHER8);
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_RENDER_DISPATCH3);
       /* TODO: implement test */
-      tr1.writeTo(writer);
+      tr2.writeTo(writer);
 
-      /* TestCase: SPEC2_19_Render_getDispatcher9                             */
+      /* TestCase: SPEC2_19_Render_dispatch4                                  */
       /* Details: "If the path provided to getRequestDispatcher method does   */
       /* not specify a valid path, the method returns null"                   */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_RENDER_GETDISPATCHER9);
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_RENDER_DISPATCH4);
       /* TODO: implement test */
-      tr2.writeTo(writer);
+      tr3.writeTo(writer);
 
-      /* TestCase: SPEC2_19_Render_getDispatcher10                            */
+      /* TestCase: SPEC2_19_Render_dispatch5                                  */
       /* Details: "The PortletContext getNamedDispatcher method returns a     */
       /* PortletRequestDispatcher for a servlet within the portlet            */
       /* application"                                                         */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_RENDER_GETDISPATCHER10);
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_RENDER_DISPATCH5);
       /* TODO: implement test */
-      tr3.writeTo(writer);
+      tr4.writeTo(writer);
 
-      /* TestCase: SPEC2_19_Render_getDispatcher11                            */
+      /* TestCase: SPEC2_19_Render_dispatch6                                  */
       /* Details: "If the name provided to getNamedDispatcher method is not   */
       /* valid, the method returns null"                                      */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_RENDER_GETDISPATCHER11);
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_RENDER_DISPATCH6);
       /* TODO: implement test */
-      tr4.writeTo(writer);
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Render_invoke2                                    */
+      /* Details: "If the forward method is called after the response has     */
+      /* been committed, an IllegalStateException exception is thrown"        */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_RENDER_INVOKE2);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
 
    }
 

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Resource.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Resource.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Resource.java
new file mode 100644
index 0000000..afc65e1
--- /dev/null
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/portlets/DispatcherTests_SPEC2_19_Resource.java
@@ -0,0 +1,168 @@
+/*  Licensed to the Apache Software Foundation (ASF) under one
+ *  or more contributor license agreements.  See the NOTICE file
+ *  distributed with this work for additional information
+ *  regarding copyright ownership.  The ASF licenses this file
+ *  to you under the Apache License, Version 2.0 (the
+ *  "License"); you may not use this file except in compliance
+ *  with the License.  You may obtain a copy of the License at
+ *
+ *    http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ */
+
+package javax.portlet.tck.portlets;
+
+import java.io.*;
+import java.util.*;
+import java.util.logging.*;
+import static java.util.logging.Logger.*;
+import javax.xml.namespace.QName;
+import javax.portlet.*;
+import javax.portlet.filter.*;
+import javax.portlet.tck.beans.*;
+import javax.portlet.tck.constants.*;
+import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
+import static javax.portlet.tck.constants.Constants.*;
+import static javax.portlet.PortletSession.*;
+import static javax.portlet.ResourceURL.*;
+
+/**
+ * This portlet implements several test cases for the JSR 362 TCK. The test case names
+ * are defined in the /src/main/resources/xml-resources/additionalTCs.xml
+ * file. The build process will integrate the test case names defined in the 
+ * additionalTCs.xml file into the complete list of test case names for execution by the driver.
+ *
+ * This is the main portlet for the test cases. If the test cases call for events, this portlet
+ * will initiate the events, but not process them. The processing is done in the companion 
+ * portlet DispatcherTests_SPEC2_19_Resource_event
+ *
+ */
+public class DispatcherTests_SPEC2_19_Resource implements Portlet, ResourceServingPortlet {
+   private static final String LOG_CLASS = 
+         DispatcherTests_SPEC2_19_Resource.class.getName();
+   private final Logger LOGGER = Logger.getLogger(LOG_CLASS);
+   
+   private PortletConfig portletConfig = null;
+
+   @Override
+   public void init(PortletConfig config) throws PortletException {
+      this.portletConfig = config;
+   }
+
+   @Override
+   public void destroy() {
+   }
+
+   @Override
+   public void processAction(ActionRequest portletReq, ActionResponse portletResp)
+         throws PortletException, IOException {
+      LOGGER.entering(LOG_CLASS, "main portlet processAction entry");
+
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute("void", tid);
+
+      StringWriter writer = new StringWriter();
+
+   }
+
+   @Override
+   public void serveResource(ResourceRequest portletReq, ResourceResponse portletResp)
+         throws PortletException, IOException {
+      LOGGER.entering(LOG_CLASS, "main portlet serveResource entry");
+
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute("void", tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+      JSR286DispatcherTestCaseDetails tcd = new JSR286DispatcherTestCaseDetails();
+
+      // Create result objects for the tests
+
+      /* TestCase: SPEC2_19_Resource_dispatch1                                */
+      /* Details: "The PortletContext getRequestDispatcher method returns a   */
+      /* PortletRequestDispatcher for a path within the portlet               */
+      /* application"                                                         */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Resource_dispatch2                                */
+      /* Details: "If the path provided to getRequestDispatcher method does   */
+      /* not start with \"/\", the method returns null"                       */
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_DISPATCH2);
+      /* TODO: implement test */
+      tr1.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Resource_dispatch3                                */
+      /* Details: "If the path provided to getRequestDispatcher method ends   */
+      /* with \"/\", the method returns null"                                 */
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_DISPATCH3);
+      /* TODO: implement test */
+      tr2.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Resource_dispatch4                                */
+      /* Details: "If the path provided to getRequestDispatcher method does   */
+      /* not specify a valid path, the method returns null"                   */
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_DISPATCH4);
+      /* TODO: implement test */
+      tr3.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Resource_dispatch5                                */
+      /* Details: "The PortletContext getNamedDispatcher method returns a     */
+      /* PortletRequestDispatcher for a servlet within the portlet            */
+      /* application"                                                         */
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_DISPATCH5);
+      /* TODO: implement test */
+      tr4.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Resource_dispatch6                                */
+      /* Details: "If the name provided to getNamedDispatcher method is not   */
+      /* valid, the method returns null"                                      */
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_DISPATCH6);
+      /* TODO: implement test */
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_Resource_invoke2                                  */
+      /* Details: "If the forward method is called after the response has     */
+      /* been committed, an IllegalStateException exception is thrown"        */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_RESOURCE_INVOKE2);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
+
+   }
+
+   @Override
+   public void render(RenderRequest portletReq, RenderResponse portletResp)
+         throws PortletException, IOException {
+      LOGGER.entering(LOG_CLASS, "main portlet render entry");
+
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute("void", tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+      writer.write("<div id=\"DispatcherTests_SPEC2_19_Resource\">no resource output.</div>\n");
+      ResourceURL resurl = portletResp.createResourceURL();
+      resurl.setCacheability(PAGE);
+      writer.write("<script>\n");
+      writer.write("(function () {\n");
+      writer.write("   var xhr = new XMLHttpRequest();\n");
+      writer.write("   xhr.onreadystatechange=function() {\n");
+      writer.write("      if (xhr.readyState==4 && xhr.status==200) {\n");
+      writer.write("         document.getElementById(\"DispatcherTests_SPEC2_19_Resource\").innerHTML=xhr.responseText;\n");
+      writer.write("      }\n");
+      writer.write("   };\n");
+      writer.write("   xhr.open(\"GET\",\"" + resurl.toString() + "\",true);\n");
+      writer.write("   xhr.send();\n");
+      writer.write("})();\n");
+      writer.write("</script>\n");
+   }
+
+}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletAction_servlet.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletAction_servlet.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletAction_servlet.java
index 93146e2..88995ce 100644
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletAction_servlet.java
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletAction_servlet.java
@@ -28,7 +28,7 @@ import javax.portlet.filter.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import javax.portlet.tck.beans.*;
-import javax.portlet.tck.constants.Constants;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.constants.Constants.*;
 import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
 
@@ -73,15 +73,119 @@ public class DispatcherTests_SPEC2_19_ForwardServletAction_servlet extends HttpS
 
       // Create result objects for the tests
 
+      /* TestCase: SPEC2_19_ForwardServletAction_dispatch1                    */
+      /* Details: "If the path provided to getRequestDispatcher method        */
+      /* contains query strings, parameters specified in the query strings    */
+      /* must be passed to the target servlet during an forward"              */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_dispatch2                    */
+      /* Details: "Parameters specified in the query strings must be          */
+      /* aggregated with the portlet render parameters"                       */
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_DISPATCH2);
+      /* TODO: implement test */
+      tr1.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_dispatch3                    */
+      /* Details: "If query string parameters have the same names as render   */
+      /* parameter names, the query string parameters appear in the           */
+      /* parameter values array before the render parameter values"           */
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_DISPATCH3);
+      /* TODO: implement test */
+      tr2.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_dispatch4                    */
+      /* Details: "The parameters associated with a request dispatcher are    */
+      /* scoped only for the duration of the forward or forward call"         */
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_DISPATCH4);
+      /* TODO: implement test */
+      tr3.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke1                      */
+      /* Details: "The PortletRequestDispatcher include method can include    */
+      /* a target servlet "                                                   */
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE1);
+      /* TODO: implement test */
+      tr4.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke2                      */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be the request and response classes from the portlet lifecyle    */
+      /* method initiating the include"                                       */
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE2);
+      /* TODO: implement test */
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke3                      */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be wrapped request and response classes from the portlet         */
+      /* lifecyle method initiating the include"                              */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE3);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke4                      */
+      /* Details: "The portlet container must invoke the target servlet in    */
+      /* the same thread as the PortletRequestDispatcher include              */
+      /* invocation"                                                          */
+      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE4);
+      /* TODO: implement test */
+      tr7.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke5                      */
+      /* Details: "Cookies set by the portlet before the forward call         */
+      /* remain valid"                                                        */
+      TestResult tr8 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE5);
+      /* TODO: implement test */
+      tr8.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke6                      */
+      /* Details: "Properties set by the portlet before the forward call      */
+      /* remain valid"                                                        */
+      TestResult tr9 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE6);
+      /* TODO: implement test */
+      tr9.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_invoke7                      */
+      /* Details: "The path elements of the request object exposed to the     */
+      /* target servlet must reflect the path used to obtain the              */
+      /* RequestDispatcher"                                                   */
+      TestResult tr10 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_INVOKE7);
+      /* TODO: implement test */
+      tr10.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_state1                       */
+      /* Details: "A window state set by the portlet before the forward       */
+      /* call remains valid"                                                  */
+      TestResult tr11 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_STATE1);
+      /* TODO: implement test */
+      tr11.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_state2                       */
+      /* Details: "A portlet mode set by the portlet before the forward       */
+      /* call remains valid"                                                  */
+      TestResult tr12 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_STATE2);
+      /* TODO: implement test */
+      tr12.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletAction_state3                       */
+      /* Details: "Render parameters set by the portlet before the forward    */
+      /* call remain valid"                                                   */
+      TestResult tr13 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_STATE3);
+      /* TODO: implement test */
+      tr13.writeTo(writer);
+
       /* TestCase: SPEC2_19_ForwardServletAction_attributes1                  */
       /* Details: "If the request dispatcher is obtained through the          */
       /* getRequestDispatcher method, the request attribute                   */
       /* javax.servlet.forward.request_uri will be set, and equals the        */
       /* value from HTTPServletRequest.getRequestURI for the first servlet    */
       /* in the forward chain"                                                */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES1);
+      TestResult tr14 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES1);
       /* TODO: implement test */
-      tr0.writeTo(writer);
+      tr14.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes2                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -89,9 +193,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletAction_servlet extends HttpS
       /* javax.servlet.forward.context_path will be set, and equals the       */
       /* value from HTTPServletRequest.getContestPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES2);
+      TestResult tr15 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES2);
       /* TODO: implement test */
-      tr1.writeTo(writer);
+      tr15.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes3                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -99,9 +203,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletAction_servlet extends HttpS
       /* javax.servlet.forward.servlet_path will be set, and equals the       */
       /* value from HTTPServletRequest.getServletPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES3);
+      TestResult tr16 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES3);
       /* TODO: implement test */
-      tr2.writeTo(writer);
+      tr16.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes4                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -109,9 +213,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletAction_servlet extends HttpS
       /* javax.servlet.forward.path_info will be set, and equals the value    */
       /* from HTTPServletRequest.getPathInfo for the first servlet in the     */
       /* forward chain"                                                       */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES4);
+      TestResult tr17 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES4);
       /* TODO: implement test */
-      tr3.writeTo(writer);
+      tr17.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes5                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -119,32 +223,32 @@ public class DispatcherTests_SPEC2_19_ForwardServletAction_servlet extends HttpS
       /* javax.servlet.forward.query_string will be set, and equals the       */
       /* value from HTTPServletRequest.getQueryString for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES5);
+      TestResult tr18 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES5);
       /* TODO: implement test */
-      tr4.writeTo(writer);
+      tr18.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes6                  */
       /* Details: "The request attribute javax.portlet.config must be set     */
       /* to the javax.portlet.PortletConfig object"                           */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES6);
+      TestResult tr19 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES6);
       /* TODO: implement test */
-      tr5.writeTo(writer);
+      tr19.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes7                  */
       /* Details: "For forwards from the processAction method, The request    */
       /* attribute javax.portlet.request must be set to the                   */
       /* javax.portlet.ActionRequest object"                                  */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES7);
+      TestResult tr20 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES7);
       /* TODO: implement test */
-      tr6.writeTo(writer);
+      tr20.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletAction_attributes8                  */
       /* Details: "For forwards from the processAction method, The request    */
       /* attribute javax.portlet.response must be set to the                  */
       /* javax.portlet.ActionResponse object"                                 */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES8);
+      TestResult tr21 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETACTION_ATTRIBUTES8);
       /* TODO: implement test */
-      tr7.writeTo(writer);
+      tr21.writeTo(writer);
 
       request.getSession().setAttribute(
                    Constants.RESULT_ATTR_PREFIX + "DispatcherTests_SPEC2_19_ForwardServletAction",

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletEvent_servlet.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletEvent_servlet.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletEvent_servlet.java
index 2ce7489..10e02ee 100644
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletEvent_servlet.java
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletEvent_servlet.java
@@ -28,7 +28,7 @@ import javax.portlet.filter.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import javax.portlet.tck.beans.*;
-import javax.portlet.tck.constants.Constants;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.constants.Constants.*;
 import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
 
@@ -73,15 +73,119 @@ public class DispatcherTests_SPEC2_19_ForwardServletEvent_servlet extends HttpSe
 
       // Create result objects for the tests
 
+      /* TestCase: SPEC2_19_ForwardServletEvent_dispatch1                     */
+      /* Details: "If the path provided to getRequestDispatcher method        */
+      /* contains query strings, parameters specified in the query strings    */
+      /* must be passed to the target servlet during an forward"              */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_dispatch2                     */
+      /* Details: "Parameters specified in the query strings must be          */
+      /* aggregated with the portlet render parameters"                       */
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_DISPATCH2);
+      /* TODO: implement test */
+      tr1.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_dispatch3                     */
+      /* Details: "If query string parameters have the same names as render   */
+      /* parameter names, the query string parameters appear in the           */
+      /* parameter values array before the render parameter values"           */
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_DISPATCH3);
+      /* TODO: implement test */
+      tr2.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_dispatch4                     */
+      /* Details: "The parameters associated with a request dispatcher are    */
+      /* scoped only for the duration of the forward or forward call"         */
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_DISPATCH4);
+      /* TODO: implement test */
+      tr3.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke1                       */
+      /* Details: "The PortletRequestDispatcher include method can include    */
+      /* a target servlet "                                                   */
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE1);
+      /* TODO: implement test */
+      tr4.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke2                       */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be the request and response classes from the portlet lifecyle    */
+      /* method initiating the include"                                       */
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE2);
+      /* TODO: implement test */
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke3                       */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be wrapped request and response classes from the portlet         */
+      /* lifecyle method initiating the include"                              */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE3);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke4                       */
+      /* Details: "The portlet container must invoke the target servlet in    */
+      /* the same thread as the PortletRequestDispatcher include              */
+      /* invocation"                                                          */
+      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE4);
+      /* TODO: implement test */
+      tr7.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke5                       */
+      /* Details: "Cookies set by the portlet before the forward call         */
+      /* remain valid"                                                        */
+      TestResult tr8 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE5);
+      /* TODO: implement test */
+      tr8.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke6                       */
+      /* Details: "Properties set by the portlet before the forward call      */
+      /* remain valid"                                                        */
+      TestResult tr9 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE6);
+      /* TODO: implement test */
+      tr9.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_invoke7                       */
+      /* Details: "The path elements of the request object exposed to the     */
+      /* target servlet must reflect the path used to obtain the              */
+      /* RequestDispatcher"                                                   */
+      TestResult tr10 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_INVOKE7);
+      /* TODO: implement test */
+      tr10.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_state1                        */
+      /* Details: "A window state set by the portlet before the forward       */
+      /* call remains valid"                                                  */
+      TestResult tr11 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_STATE1);
+      /* TODO: implement test */
+      tr11.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_state2                        */
+      /* Details: "A portlet mode set by the portlet before the forward       */
+      /* call remains valid"                                                  */
+      TestResult tr12 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_STATE2);
+      /* TODO: implement test */
+      tr12.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletEvent_state3                        */
+      /* Details: "Render parameters set by the portlet before the forward    */
+      /* call remain valid"                                                   */
+      TestResult tr13 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_STATE3);
+      /* TODO: implement test */
+      tr13.writeTo(writer);
+
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes1                   */
       /* Details: "If the request dispatcher is obtained through the          */
       /* getRequestDispatcher method, the request attribute                   */
       /* javax.servlet.forward.request_uri will be set, and equals the        */
       /* value from HTTPServletRequest.getRequestURI for the first servlet    */
       /* in the forward chain"                                                */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES1);
+      TestResult tr14 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES1);
       /* TODO: implement test */
-      tr0.writeTo(writer);
+      tr14.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes2                   */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -89,9 +193,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletEvent_servlet extends HttpSe
       /* javax.servlet.forward.context_path will be set, and equals the       */
       /* value from HTTPServletRequest.getContestPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES2);
+      TestResult tr15 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES2);
       /* TODO: implement test */
-      tr1.writeTo(writer);
+      tr15.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes3                   */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -99,9 +203,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletEvent_servlet extends HttpSe
       /* javax.servlet.forward.servlet_path will be set, and equals the       */
       /* value from HTTPServletRequest.getServletPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES3);
+      TestResult tr16 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES3);
       /* TODO: implement test */
-      tr2.writeTo(writer);
+      tr16.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes4                   */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -109,9 +213,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletEvent_servlet extends HttpSe
       /* javax.servlet.forward.path_info will be set, and equals the value    */
       /* from HTTPServletRequest.getPathInfo for the first servlet in the     */
       /* forward chain"                                                       */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES4);
+      TestResult tr17 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES4);
       /* TODO: implement test */
-      tr3.writeTo(writer);
+      tr17.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes5                   */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -119,32 +223,32 @@ public class DispatcherTests_SPEC2_19_ForwardServletEvent_servlet extends HttpSe
       /* javax.servlet.forward.query_string will be set, and equals the       */
       /* value from HTTPServletRequest.getQueryString for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES5);
+      TestResult tr18 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES5);
       /* TODO: implement test */
-      tr4.writeTo(writer);
+      tr18.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes6                   */
       /* Details: "The request attribute javax.portlet.config must be set     */
       /* to the javax.portlet.PortletConfig object"                           */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES6);
+      TestResult tr19 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES6);
       /* TODO: implement test */
-      tr5.writeTo(writer);
+      tr19.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes7                   */
       /* Details: "For forwards from the processEvent method, The request     */
       /* attribute javax.portlet.request must be set to the                   */
       /* javax.portlet.EventRequest object"                                   */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES7);
+      TestResult tr20 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES7);
       /* TODO: implement test */
-      tr6.writeTo(writer);
+      tr20.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletEvent_attributes8                   */
       /* Details: "For forwards from the processEvent method, The request     */
       /* attribute javax.portlet.response must be set to the                  */
       /* javax.portlet.EventResponse object"                                  */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES8);
+      TestResult tr21 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETEVENT_ATTRIBUTES8);
       /* TODO: implement test */
-      tr7.writeTo(writer);
+      tr21.writeTo(writer);
 
       request.getSession().setAttribute(
                    Constants.RESULT_ATTR_PREFIX + "DispatcherTests_SPEC2_19_ForwardServletEvent",

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletRender_servlet.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletRender_servlet.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletRender_servlet.java
index a52d696..5af365e 100644
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletRender_servlet.java
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletRender_servlet.java
@@ -28,7 +28,7 @@ import javax.portlet.filter.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import javax.portlet.tck.beans.*;
-import javax.portlet.tck.constants.Constants;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.constants.Constants.*;
 import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
 
@@ -73,15 +73,113 @@ public class DispatcherTests_SPEC2_19_ForwardServletRender_servlet extends HttpS
 
       // Create result objects for the tests
 
+      /* TestCase: SPEC2_19_ForwardServletRender_dispatch1                    */
+      /* Details: "If the path provided to getRequestDispatcher method        */
+      /* contains query strings, parameters specified in the query strings    */
+      /* must be passed to the target servlet during an forward"              */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_dispatch2                    */
+      /* Details: "Parameters specified in the query strings must be          */
+      /* aggregated with the portlet render parameters"                       */
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_DISPATCH2);
+      /* TODO: implement test */
+      tr1.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_dispatch3                    */
+      /* Details: "If query string parameters have the same names as render   */
+      /* parameter names, the query string parameters appear in the           */
+      /* parameter values array before the render parameter values"           */
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_DISPATCH3);
+      /* TODO: implement test */
+      tr2.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_dispatch4                    */
+      /* Details: "The parameters associated with a request dispatcher are    */
+      /* scoped only for the duration of the forward or forward call"         */
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_DISPATCH4);
+      /* TODO: implement test */
+      tr3.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke1                      */
+      /* Details: "The PortletRequestDispatcher include method can include    */
+      /* a target servlet "                                                   */
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE1);
+      /* TODO: implement test */
+      tr4.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke2                      */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be the request and response classes from the portlet lifecyle    */
+      /* method initiating the include"                                       */
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE2);
+      /* TODO: implement test */
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke3                      */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be wrapped request and response classes from the portlet         */
+      /* lifecyle method initiating the include"                              */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE3);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke4                      */
+      /* Details: "The portlet container must invoke the target servlet in    */
+      /* the same thread as the PortletRequestDispatcher include              */
+      /* invocation"                                                          */
+      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE4);
+      /* TODO: implement test */
+      tr7.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke5                      */
+      /* Details: "Cookies set by the portlet before the forward call         */
+      /* remain valid"                                                        */
+      TestResult tr8 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE5);
+      /* TODO: implement test */
+      tr8.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke6                      */
+      /* Details: "Properties set by the portlet before the forward call      */
+      /* remain valid"                                                        */
+      TestResult tr9 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE6);
+      /* TODO: implement test */
+      tr9.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_invoke7                      */
+      /* Details: "The path elements of the request object exposed to the     */
+      /* target servlet must reflect the path used to obtain the              */
+      /* RequestDispatcher"                                                   */
+      TestResult tr10 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_INVOKE7);
+      /* TODO: implement test */
+      tr10.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_commit1                      */
+      /* Details: "Before the forward method of the RequestDispatcher         */
+      /* interface returns, the response content must be sent and             */
+      /* committed, and closed by the portlet container"                      */
+      TestResult tr11 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_COMMIT1);
+      /* TODO: implement test */
+      tr11.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletRender_title1                       */
+      /* Details: "A portlet title set by the portlet before the forward      */
+      /* call remains valid"                                                  */
+      TestResult tr12 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_TITLE1);
+      /* TODO: implement test */
+      tr12.writeTo(writer);
+
       /* TestCase: SPEC2_19_ForwardServletRender_attributes1                  */
       /* Details: "If the request dispatcher is obtained through the          */
       /* getRequestDispatcher method, the request attribute                   */
       /* javax.servlet.forward.request_uri will be set, and equals the        */
       /* value from HTTPServletRequest.getRequestURI for the first servlet    */
       /* in the forward chain"                                                */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES1);
+      TestResult tr13 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES1);
       /* TODO: implement test */
-      tr0.writeTo(writer);
+      tr13.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes2                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -89,9 +187,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletRender_servlet extends HttpS
       /* javax.servlet.forward.context_path will be set, and equals the       */
       /* value from HTTPServletRequest.getContestPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES2);
+      TestResult tr14 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES2);
       /* TODO: implement test */
-      tr1.writeTo(writer);
+      tr14.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes3                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -99,9 +197,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletRender_servlet extends HttpS
       /* javax.servlet.forward.servlet_path will be set, and equals the       */
       /* value from HTTPServletRequest.getServletPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES3);
+      TestResult tr15 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES3);
       /* TODO: implement test */
-      tr2.writeTo(writer);
+      tr15.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes4                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -109,9 +207,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletRender_servlet extends HttpS
       /* javax.servlet.forward.path_info will be set, and equals the value    */
       /* from HTTPServletRequest.getPathInfo for the first servlet in the     */
       /* forward chain"                                                       */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES4);
+      TestResult tr16 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES4);
       /* TODO: implement test */
-      tr3.writeTo(writer);
+      tr16.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes5                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -119,32 +217,32 @@ public class DispatcherTests_SPEC2_19_ForwardServletRender_servlet extends HttpS
       /* javax.servlet.forward.query_string will be set, and equals the       */
       /* value from HTTPServletRequest.getQueryString for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES5);
+      TestResult tr17 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES5);
       /* TODO: implement test */
-      tr4.writeTo(writer);
+      tr17.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes6                  */
       /* Details: "The request attribute javax.portlet.config must be set     */
       /* to the javax.portlet.PortletConfig object"                           */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES6);
+      TestResult tr18 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES6);
       /* TODO: implement test */
-      tr5.writeTo(writer);
+      tr18.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes7                  */
       /* Details: "For forwards from the render method, The request           */
       /* attribute javax.portlet.request must be set to the                   */
       /* javax.portlet.RenderRequest object"                                  */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES7);
+      TestResult tr19 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES7);
       /* TODO: implement test */
-      tr6.writeTo(writer);
+      tr19.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletRender_attributes8                  */
       /* Details: "For forwards from the render method, The request           */
       /* attribute javax.portlet.response must be set to the                  */
       /* javax.portlet.RenderResponse object"                                 */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES8);
+      TestResult tr20 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRENDER_ATTRIBUTES8);
       /* TODO: implement test */
-      tr7.writeTo(writer);
+      tr20.writeTo(writer);
 
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletResource_servlet.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletResource_servlet.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletResource_servlet.java
index d8370fe..2fe00a5 100644
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletResource_servlet.java
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServletResource_servlet.java
@@ -28,7 +28,7 @@ import javax.portlet.filter.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import javax.portlet.tck.beans.*;
-import javax.portlet.tck.constants.Constants;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.constants.Constants.*;
 import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
 
@@ -73,15 +73,106 @@ public class DispatcherTests_SPEC2_19_ForwardServletResource_servlet extends Htt
 
       // Create result objects for the tests
 
+      /* TestCase: SPEC2_19_ForwardServletResource_dispatch1                  */
+      /* Details: "If the path provided to getRequestDispatcher method        */
+      /* contains query strings, parameters specified in the query strings    */
+      /* must be passed to the target servlet during an forward"              */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_dispatch2                  */
+      /* Details: "Parameters specified in the query strings must be          */
+      /* aggregated with the portlet render parameters"                       */
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_DISPATCH2);
+      /* TODO: implement test */
+      tr1.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_dispatch3                  */
+      /* Details: "If query string parameters have the same names as render   */
+      /* parameter names, the query string parameters appear in the           */
+      /* parameter values array before the render parameter values"           */
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_DISPATCH3);
+      /* TODO: implement test */
+      tr2.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_dispatch4                  */
+      /* Details: "The parameters associated with a request dispatcher are    */
+      /* scoped only for the duration of the forward or forward call"         */
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_DISPATCH4);
+      /* TODO: implement test */
+      tr3.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke1                    */
+      /* Details: "The PortletRequestDispatcher include method can include    */
+      /* a target servlet "                                                   */
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE1);
+      /* TODO: implement test */
+      tr4.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke2                    */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be the request and response classes from the portlet lifecyle    */
+      /* method initiating the include"                                       */
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE2);
+      /* TODO: implement test */
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke3                    */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be wrapped request and response classes from the portlet         */
+      /* lifecyle method initiating the include"                              */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE3);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke4                    */
+      /* Details: "The portlet container must invoke the target servlet in    */
+      /* the same thread as the PortletRequestDispatcher include              */
+      /* invocation"                                                          */
+      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE4);
+      /* TODO: implement test */
+      tr7.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke5                    */
+      /* Details: "Cookies set by the portlet before the forward call         */
+      /* remain valid"                                                        */
+      TestResult tr8 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE5);
+      /* TODO: implement test */
+      tr8.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke6                    */
+      /* Details: "Properties set by the portlet before the forward call      */
+      /* remain valid"                                                        */
+      TestResult tr9 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE6);
+      /* TODO: implement test */
+      tr9.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_invoke7                    */
+      /* Details: "The path elements of the request object exposed to the     */
+      /* target servlet must reflect the path used to obtain the              */
+      /* RequestDispatcher"                                                   */
+      TestResult tr10 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_INVOKE7);
+      /* TODO: implement test */
+      tr10.writeTo(writer);
+
+      /* TestCase: SPEC2_19_ForwardServletResource_commit1                    */
+      /* Details: "Before the forward method of the RequestDispatcher         */
+      /* interface returns, the response content must be sent and             */
+      /* committed, and closed by the portlet container"                      */
+      TestResult tr11 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_COMMIT1);
+      /* TODO: implement test */
+      tr11.writeTo(writer);
+
       /* TestCase: SPEC2_19_ForwardServletResource_attributes1                */
       /* Details: "If the request dispatcher is obtained through the          */
       /* getRequestDispatcher method, the request attribute                   */
       /* javax.servlet.forward.request_uri will be set, and equals the        */
       /* value from HTTPServletRequest.getRequestURI for the first servlet    */
       /* in the forward chain"                                                */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES1);
+      TestResult tr12 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES1);
       /* TODO: implement test */
-      tr0.writeTo(writer);
+      tr12.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes2                */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -89,9 +180,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletResource_servlet extends Htt
       /* javax.servlet.forward.context_path will be set, and equals the       */
       /* value from HTTPServletRequest.getContestPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES2);
+      TestResult tr13 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES2);
       /* TODO: implement test */
-      tr1.writeTo(writer);
+      tr13.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes3                */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -99,9 +190,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletResource_servlet extends Htt
       /* javax.servlet.forward.servlet_path will be set, and equals the       */
       /* value from HTTPServletRequest.getServletPath for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES3);
+      TestResult tr14 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES3);
       /* TODO: implement test */
-      tr2.writeTo(writer);
+      tr14.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes4                */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -109,9 +200,9 @@ public class DispatcherTests_SPEC2_19_ForwardServletResource_servlet extends Htt
       /* javax.servlet.forward.path_info will be set, and equals the value    */
       /* from HTTPServletRequest.getPathInfo for the first servlet in the     */
       /* forward chain"                                                       */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES4);
+      TestResult tr15 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES4);
       /* TODO: implement test */
-      tr3.writeTo(writer);
+      tr15.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes5                */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -119,32 +210,32 @@ public class DispatcherTests_SPEC2_19_ForwardServletResource_servlet extends Htt
       /* javax.servlet.forward.query_string will be set, and equals the       */
       /* value from HTTPServletRequest.getQueryString for the first servlet   */
       /* in the forward chain"                                                */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES5);
+      TestResult tr16 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES5);
       /* TODO: implement test */
-      tr4.writeTo(writer);
+      tr16.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes6                */
       /* Details: "The request attribute javax.portlet.config must be set     */
       /* to the javax.portlet.PortletConfig object"                           */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES6);
+      TestResult tr17 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES6);
       /* TODO: implement test */
-      tr5.writeTo(writer);
+      tr17.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes7                */
       /* Details: "For forwards from the serveResource method, The request    */
       /* attribute javax.portlet.request must be set to the                   */
       /* javax.portlet.ResourceRequest object"                                */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES7);
+      TestResult tr18 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES7);
       /* TODO: implement test */
-      tr6.writeTo(writer);
+      tr18.writeTo(writer);
 
       /* TestCase: SPEC2_19_ForwardServletResource_attributes8                */
       /* Details: "For forwards from the serveResource method, The request    */
       /* attribute javax.portlet.response must be set to the                  */
       /* javax.portlet.ResourceResponse object"                               */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES8);
+      TestResult tr19 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLETRESOURCE_ATTRIBUTES8);
       /* TODO: implement test */
-      tr7.writeTo(writer);
+      tr19.writeTo(writer);
 
 
    }

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServlet_servlet.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServlet_servlet.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServlet_servlet.java
deleted file mode 100644
index 3bcf382..0000000
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_ForwardServlet_servlet.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-
-package javax.portlet.tck.servlets;
-
-import java.io.*;
-import java.util.*;
-import java.util.logging.*;
-import static java.util.logging.Logger.*;
-import javax.portlet.*;
-import javax.portlet.filter.*;
-import javax.servlet.*;
-import javax.servlet.http.*;
-import javax.portlet.tck.beans.*;
-import javax.portlet.tck.constants.Constants;
-import static javax.portlet.tck.constants.Constants.*;
-import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
-
-/**
- * Servlet for JSR 362 request dispatcher testing.
- * Used by portlet: DispatcherTests_SPEC2_19_ForwardServlet
- *
- * @author nick
- *
- */
-public class DispatcherTests_SPEC2_19_ForwardServlet_servlet extends HttpServlet {
-   private static final String LOG_CLASS = 
-         DispatcherTests_SPEC2_19_ForwardServlet_servlet.class.getName();
-   private final Logger LOGGER = Logger.getLogger(LOG_CLASS);
-
-   @Override
-   protected void doGet(HttpServletRequest req, HttpServletResponse resp)
-         throws ServletException, IOException {
-      processTCKReq(req, resp);
-   }
-
-   @Override
-   protected void doPost(HttpServletRequest req, HttpServletResponse resp)
-         throws ServletException, IOException {
-      processTCKReq(req, resp);
-   }
-
-   // The tck uses only get & post requests
-   protected void processTCKReq(HttpServletRequest request, HttpServletResponse response)
-         throws ServletException, IOException {
-      LOGGER.entering(LOG_CLASS, "servlet entry");
-
-      PortletRequest portletReq = (PortletRequest) request.getAttribute("javax.portlet.request");
-      PortletResponse portletResp = (PortletResponse) request.getAttribute("javax.portlet.response");
-      PortletConfig portletConfig = (PortletConfig) request.getAttribute("javax.portlet.config");
-      long svtTid = Thread.currentThread().getId();
-      long reqTid = (Long) portletReq.getAttribute("void");
-
-      PrintWriter writer = ((MimeResponse)portletResp).getWriter();
-
-      JSR286DispatcherTestCaseDetails tcd = new JSR286DispatcherTestCaseDetails();
-
-      // Create result objects for the tests
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke1                            */
-      /* Details: "The PortletRequestDispatcher include method can include    */
-      /* a target servlet "                                                   */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE1);
-      /* TODO: implement test */
-      tr0.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke2                            */
-      /* Details: "Parameters to the include method for a target servlet      */
-      /* can be the request and response classes from the portlet lifecyle    */
-      /* method initiating the include"                                       */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE2);
-      /* TODO: implement test */
-      tr1.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke3                            */
-      /* Details: "Parameters to the include method for a target servlet      */
-      /* can be wrapped request and response classes from the portlet         */
-      /* lifecyle method initiating the include"                              */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE3);
-      /* TODO: implement test */
-      tr2.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke4                            */
-      /* Details: "The portlet container must invoke the target servlet in    */
-      /* the same thread as the PortletRequestDispatcher include              */
-      /* invocation"                                                          */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE4);
-      /* TODO: implement test */
-      tr3.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke5                            */
-      /* Details: "If output data exists in the response buffer that has      */
-      /* not been committed, the content must be cleared before the target    */
-      /* servlet's service method is called"                                  */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE5);
-      /* TODO: implement test */
-      tr4.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke6                            */
-      /* Details: "If the forward method is called after the response has     */
-      /* been committed, an IllegalStateException exception is thrown"        */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE6);
-      /* TODO: implement test */
-      tr5.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke7                            */
-      /* Details: "Cookies set by the portlet before the forward call         */
-      /* remain valid"                                                        */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE7);
-      /* TODO: implement test */
-      tr6.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke8                            */
-      /* Details: "A window state set by the portlet before the forward       */
-      /* call remains valid"                                                  */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE8);
-      /* TODO: implement test */
-      tr7.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke9                            */
-      /* Details: "A portlet mode set by the portlet before the forward       */
-      /* call remains valid"                                                  */
-      TestResult tr8 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE9);
-      /* TODO: implement test */
-      tr8.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke10                           */
-      /* Details: "Properties set by the portlet before the forward call      */
-      /* remain valid"                                                        */
-      TestResult tr9 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE10);
-      /* TODO: implement test */
-      tr9.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke11                           */
-      /* Details: "Render parameters set by the portlet before the forward    */
-      /* call remain valid"                                                   */
-      TestResult tr10 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE11);
-      /* TODO: implement test */
-      tr10.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke12                           */
-      /* Details: "A portlet title set by the portlet before the forward      */
-      /* call remains valid"                                                  */
-      TestResult tr11 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE12);
-      /* TODO: implement test */
-      tr11.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke13                           */
-      /* Details: "The path elements of the request object exposed to the     */
-      /* target servlet must reflect the path used to obtain the              */
-      /* RequestDispatcher"                                                   */
-      TestResult tr12 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE13);
-      /* TODO: implement test */
-      tr12.writeTo(writer);
-
-      /* TestCase: SPEC2_19_ForwardServlet_invoke14                           */
-      /* Details: "Before the forward method of the RequestDispatcher         */
-      /* interface returns, the response content must be sent and             */
-      /* committed, and closed by the portlet container"                      */
-      TestResult tr13 = tcd.getTestResultFailed(SPEC2_19_FORWARDSERVLET_INVOKE14);
-      /* TODO: implement test */
-      tr13.writeTo(writer);
-
-
-   }
-}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/42ea07d0/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_IncludeServletAction_servlet.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_IncludeServletAction_servlet.java b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_IncludeServletAction_servlet.java
index 76ff430..474023f 100644
--- a/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_IncludeServletAction_servlet.java
+++ b/portlet-tck_3.0/V2DispatcherTests/src/main/java/javax/portlet/tck/servlets/DispatcherTests_SPEC2_19_IncludeServletAction_servlet.java
@@ -28,7 +28,7 @@ import javax.portlet.filter.*;
 import javax.servlet.*;
 import javax.servlet.http.*;
 import javax.portlet.tck.beans.*;
-import javax.portlet.tck.constants.Constants;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.constants.Constants.*;
 import static javax.portlet.tck.beans.JSR286DispatcherTestCaseDetails.*;
 
@@ -73,15 +73,133 @@ public class DispatcherTests_SPEC2_19_IncludeServletAction_servlet extends HttpS
 
       // Create result objects for the tests
 
+      /* TestCase: SPEC2_19_IncludeServletAction_dispatch1                    */
+      /* Details: "If the path provided to getRequestDispatcher method        */
+      /* contains query strings, parameters specified in the query strings    */
+      /* must be passed to the target servlet during an include"              */
+      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_DISPATCH1);
+      /* TODO: implement test */
+      tr0.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_dispatch2                    */
+      /* Details: "Parameters specified in the query strings must be          */
+      /* aggregated with the portlet render parameters"                       */
+      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_DISPATCH2);
+      /* TODO: implement test */
+      tr1.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_dispatch3                    */
+      /* Details: "If query string parameters have the same names as render   */
+      /* parameter names, the query string parameters appear in the           */
+      /* parameter values array before the render parameter values"           */
+      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_DISPATCH3);
+      /* TODO: implement test */
+      tr2.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_dispatch4                    */
+      /* Details: "The parameters associated with a request dispatcher are    */
+      /* scoped only for the duration of the include or forward call"         */
+      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_DISPATCH4);
+      /* TODO: implement test */
+      tr3.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke1                      */
+      /* Details: "The PortletRequestDispatcher include method can include    */
+      /* a target servlet "                                                   */
+      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE1);
+      /* TODO: implement test */
+      tr4.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke2                      */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be the request and response classes from the portlet lifecyle    */
+      /* method initiating the include"                                       */
+      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE2);
+      /* TODO: implement test */
+      tr5.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke3                      */
+      /* Details: "Parameters to the include method for a target servlet      */
+      /* can be wrapped request and response classes from the portlet         */
+      /* lifecyle method initiating the include"                              */
+      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE3);
+      /* TODO: implement test */
+      tr6.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke4                      */
+      /* Details: "The portlet container must invoke the target servlet in    */
+      /* the same thread as the PortletRequestDispatcher include              */
+      /* invocation"                                                          */
+      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE4);
+      /* TODO: implement test */
+      tr7.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke5                      */
+      /* Details: "Cookies set by the portlet before the include call         */
+      /* remain valid"                                                        */
+      TestResult tr8 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE5);
+      /* TODO: implement test */
+      tr8.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke6                      */
+      /* Details: "Properties set by the portlet before the include call      */
+      /* remain valid"                                                        */
+      TestResult tr9 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE6);
+      /* TODO: implement test */
+      tr9.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke7                      */
+      /* Details: "The path elements of the request object exposed to the     */
+      /* target servlet must reflect the path used to obtain the              */
+      /* RequestDispatcher"                                                   */
+      TestResult tr10 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE7);
+      /* TODO: implement test */
+      tr10.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke8                      */
+      /* Details: "The portlet can include multiple servlets during the       */
+      /* same lifecycle method"                                               */
+      TestResult tr11 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE8);
+      /* TODO: implement test */
+      tr11.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_invoke9                      */
+      /* Details: "The included servlet must be handled as an HTTP GET        */
+      /* request"                                                             */
+      TestResult tr12 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_INVOKE9);
+      /* TODO: implement test */
+      tr12.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_state1                       */
+      /* Details: "A window state set by the portlet before the include       */
+      /* call remains valid"                                                  */
+      TestResult tr13 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_STATE1);
+      /* TODO: implement test */
+      tr13.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_state2                       */
+      /* Details: "A portlet mode set by the portlet before the include       */
+      /* call remains valid"                                                  */
+      TestResult tr14 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_STATE2);
+      /* TODO: implement test */
+      tr14.writeTo(writer);
+
+      /* TestCase: SPEC2_19_IncludeServletAction_state3                       */
+      /* Details: "Render parameters set by the portlet before the include    */
+      /* call remain valid"                                                   */
+      TestResult tr15 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_STATE3);
+      /* TODO: implement test */
+      tr15.writeTo(writer);
+
       /* TestCase: SPEC2_19_IncludeServletAction_attributes1                  */
       /* Details: "If the request dispatcher is obtained through the          */
       /* getRequestDispatcher method, the request attribute                   */
       /* javax.servlet.include.request_uri will be set, and equals the        */
       /* value from HTTPServletRequest.getRequestURI for the first servlet    */
       /* in the include chain"                                                */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES1);
+      TestResult tr16 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES1);
       /* TODO: implement test */
-      tr0.writeTo(writer);
+      tr16.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes2                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -89,9 +207,9 @@ public class DispatcherTests_SPEC2_19_IncludeServletAction_servlet extends HttpS
       /* javax.servlet.include.context_path will be set, and equals the       */
       /* value from HTTPServletRequest.getContestPath for the first servlet   */
       /* in the include chain"                                                */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES2);
+      TestResult tr17 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES2);
       /* TODO: implement test */
-      tr1.writeTo(writer);
+      tr17.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes3                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -99,9 +217,9 @@ public class DispatcherTests_SPEC2_19_IncludeServletAction_servlet extends HttpS
       /* javax.servlet.include.servlet_path will be set, and equals the       */
       /* value from HTTPServletRequest.getServletPath for the first servlet   */
       /* in the include chain"                                                */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES3);
+      TestResult tr18 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES3);
       /* TODO: implement test */
-      tr2.writeTo(writer);
+      tr18.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes4                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -109,9 +227,9 @@ public class DispatcherTests_SPEC2_19_IncludeServletAction_servlet extends HttpS
       /* javax.servlet.include.path_info will be set, and equals the value    */
       /* from HTTPServletRequest.getPathInfo for the first servlet in the     */
       /* include chain"                                                       */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES4);
+      TestResult tr19 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES4);
       /* TODO: implement test */
-      tr3.writeTo(writer);
+      tr19.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes5                  */
       /* Details: "If the request dispatcher is obtained through the          */
@@ -119,32 +237,32 @@ public class DispatcherTests_SPEC2_19_IncludeServletAction_servlet extends HttpS
       /* javax.servlet.include.query_string will be set, and equals the       */
       /* value from HTTPServletRequest.getQueryString for the first servlet   */
       /* in the include chain"                                                */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES5);
+      TestResult tr20 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES5);
       /* TODO: implement test */
-      tr4.writeTo(writer);
+      tr20.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes6                  */
       /* Details: "The request attribute javax.portlet.config must be set     */
       /* to the javax.portlet.PortletConfig object"                           */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES6);
+      TestResult tr21 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES6);
       /* TODO: implement test */
-      tr5.writeTo(writer);
+      tr21.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes7                  */
       /* Details: "For includes from the processAction method, The request    */
       /* attribute javax.portlet.request must be set to the                   */
       /* javax.portlet.ActionRequest object"                                  */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES7);
+      TestResult tr22 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES7);
       /* TODO: implement test */
-      tr6.writeTo(writer);
+      tr22.writeTo(writer);
 
       /* TestCase: SPEC2_19_IncludeServletAction_attributes8                  */
       /* Details: "For includes from the processAction method, The request    */
       /* attribute javax.portlet.response must be set to the                  */
       /* javax.portlet.ActionResponse object"                                 */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES8);
+      TestResult tr23 = tcd.getTestResultFailed(SPEC2_19_INCLUDESERVLETACTION_ATTRIBUTES8);
       /* TODO: implement test */
-      tr7.writeTo(writer);
+      tr23.writeTo(writer);
 
       request.getSession().setAttribute(
                    Constants.RESULT_ATTR_PREFIX + "DispatcherTests_SPEC2_19_IncludeServletAction",