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/25 11:55:22 UTC

[18/22] began work on generating the additional spec tests and the portlet tab library tests again in order to improve structure and correct problems in test case names.

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_Preferences.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_Preferences.java b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_Preferences.java
deleted file mode 100644
index b8c1700..0000000
--- a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_Preferences.java
+++ /dev/null
@@ -1,285 +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.portlets;
-
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import java.util.Enumeration;
-import java.util.Locale;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import javax.portlet.*;
-import javax.portlet.filter.*;
-import javax.portlet.tck.beans.ClassChecker;
-import javax.portlet.tck.beans.TestCaseDetails;
-import javax.portlet.tck.beans.JSR286SpecTestCaseDetails;
-import static javax.portlet.tck.beans.JSR286SpecTestCaseDetails.*;
-import javax.portlet.tck.beans.TestResult;
-
-/**
- * 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.
- */
-public class AddlEnvironmentTests_SPEC2_17_Preferences implements Portlet {
-   private static final String LOG_CLASS = 
-         AddlEnvironmentTests_SPEC2_17_Preferences.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 actionRequest, ActionResponse actionResponse)
-         throws PortletException, IOException {
-   }
-
-   @Override
-   public void render(RenderRequest renderRequest, RenderResponse renderResponse)
-         throws PortletException, IOException {
-      
-      if (LOGGER.isLoggable(Level.FINE)) {
-         LOGGER.logp(Level.FINE, LOG_CLASS, "render", "Entry");
-      }
-
-      PrintWriter writer = renderResponse.getWriter();
-      JSR286SpecTestCaseDetails tcd = new JSR286SpecTestCaseDetails();
-
-      // Create result objects for the tests
-
-      /* TestCase: SPEC2_17_Preferences_values6                               */
-      /* Details: "Changing the Map returned by getMap does not change the    */
-      /* underlying preferences"                                              */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_VALUES6);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_values7                               */
-      /* Details: "When the lifecycle method render is invoked, the           */
-      /* PortletPreferences object must reflect the current state of the      */
-      /* persistent store"                                                    */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_VALUES7);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_values8                               */
-      /* Details: "When the lifecycle method processAction is invoked, the    */
-      /* PortletPreferences object must reflect the current state of the      */
-      /* persistent store"                                                    */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_VALUES8);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_values9                               */
-      /* Details: "When the lifecycle method processEvent is invoked, the     */
-      /* PortletPreferences object must reflect the current state of the      */
-      /* persistent store"                                                    */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_VALUES9);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_values10                              */
-      /* Details: "When the lifecycle method serveResource is invoked, the    */
-      /* PortletPreferences object must reflect the current state of the      */
-      /* persistent store"                                                    */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_VALUES10);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_setValues4                            */
-      /* Details: "The setValues method allows the value array to be set to   */
-      /* null"                                                                */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_SETVALUES4);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_reset1                                */
-      /* Details: "The reset method sets the value of the specified           */
-      /* preference to its default value. The actual default value itself     */
-      /* is implementation-specific and cannot be tested."                    */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_RESET1);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_reset2                                */
-      /* Details: "The reset method deletes the preference if there is no     */
-      /* default value"                                                       */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_RESET2);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_store1                                */
-      /* Details: "The store method persists preference changes previously    */
-      /* made during the processAction method"                                */
-      TestResult tr8 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_STORE1);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_store2                                */
-      /* Details: "The store method persists preference changes previously    */
-      /* made during the processEvent method"                                 */
-      TestResult tr9 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_STORE2);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_store3                                */
-      /* Details: "The store method persists preference changes previously    */
-      /* made during the serveResource method"                                */
-      TestResult tr10 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_STORE3);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_store4                                */
-      /* Details: "If preference changes are made during the processAction    */
-      /* method, but the method completes without store being called, the     */
-      /* preference changes are discarded"                                    */
-      TestResult tr11 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_STORE4);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_store5                                */
-      /* Details: "If preference changes are made during the processEvent     */
-      /* method, but the method completes without store being called, the     */
-      /* preference changes are discarded"                                    */
-      TestResult tr12 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_STORE5);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_store6                                */
-      /* Details: "If preference changes are made during the serveResource    */
-      /* method, but the method completes without store being called, the     */
-      /* preference changes are discarded"                                    */
-      TestResult tr13 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_STORE6);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment1                           */
-      /* Details: "The portlet definition may define the preference           */
-      /* attributes a portlet uses"                                           */
-      TestResult tr14 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT1);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment2                           */
-      /* Details: "A preference attribute definition may include initial      */
-      /* default values"                                                      */
-      TestResult tr15 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT2);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment3                           */
-      /* Details: "A preference attribute definition may indicate if the      */
-      /* attribute is read only"                                              */
-      TestResult tr16 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT3);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment4                           */
-      /* Details: "If a preference attribute definition does not contain      */
-      /* the read-only setting, it will be modifiable in the processAction    */
-      /* method"                                                              */
-      TestResult tr17 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT4);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment5                           */
-      /* Details: "If a preference attribute definition does not contain      */
-      /* the read-only setting, it will be modifiable in the processEvent     */
-      /* method"                                                              */
-      TestResult tr18 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT5);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment6                           */
-      /* Details: "If a preference attribute definition does not contain      */
-      /* the read-only setting, it will be modifiable in the serveResource    */
-      /* method"                                                              */
-      TestResult tr19 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT6);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment7                           */
-      /* Details: "If a preference attribute definition contains the          */
-      /* read-only setting, it will not be modifiable in the processAction    */
-      /* method"                                                              */
-      TestResult tr20 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT7);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment8                           */
-      /* Details: "If a preference attribute definition contains the          */
-      /* read-only setting, it will not be modifiable in the processEvent     */
-      /* method"                                                              */
-      TestResult tr21 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT8);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment9                           */
-      /* Details: "If a preference attribute definition contains the          */
-      /* read-only setting, it will not be modifiable in the serveResource    */
-      /* method"                                                              */
-      TestResult tr22 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT9);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment10                          */
-      /* Details: "A preference attribute not defined in the deployment       */
-      /* descriptor may be added programmatically in the processAction        */
-      /* method"                                                              */
-      TestResult tr23 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT10);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment11                          */
-      /* Details: "A preference attribute not defined in the deployment       */
-      /* descriptor may be added programmatically in the processEvent         */
-      /* method"                                                              */
-      TestResult tr24 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT11);
-      /* TODO: implement test */
-
-      /* TestCase: SPEC2_17_Preferences_deployment12                          */
-      /* Details: "A preference attribute not defined in the deployment       */
-      /* descriptor may be added programmatically in the serveResource        */
-      /* method"                                                              */
-      TestResult tr25 = tcd.getTestResultFailed(SPEC2_17_PREFERENCES_DEPLOYMENT12);
-      /* TODO: implement test */
-
-
-
-      // Write the results to the output stream
-
-      tr0.writeTo(writer);
-      tr1.writeTo(writer);
-      tr2.writeTo(writer);
-      tr3.writeTo(writer);
-      tr4.writeTo(writer);
-      tr5.writeTo(writer);
-      tr6.writeTo(writer);
-      tr7.writeTo(writer);
-      tr8.writeTo(writer);
-      tr9.writeTo(writer);
-      tr10.writeTo(writer);
-      tr11.writeTo(writer);
-      tr12.writeTo(writer);
-      tr13.writeTo(writer);
-      tr14.writeTo(writer);
-      tr15.writeTo(writer);
-      tr16.writeTo(writer);
-      tr17.writeTo(writer);
-      tr18.writeTo(writer);
-      tr19.writeTo(writer);
-      tr20.writeTo(writer);
-      tr21.writeTo(writer);
-      tr22.writeTo(writer);
-      tr23.writeTo(writer);
-      tr24.writeTo(writer);
-      tr25.writeTo(writer);
-
-
-   }
-
-}
-

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_RenderPreferences.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_RenderPreferences.java b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_RenderPreferences.java
new file mode 100644
index 0000000..a539e0e
--- /dev/null
+++ b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_RenderPreferences.java
@@ -0,0 +1,121 @@
+/*  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.servlet.*;
+import javax.servlet.http.*;
+import javax.portlet.tck.beans.*;
+import javax.portlet.tck.constants.*;
+import static javax.portlet.tck.beans.JSR286SpecTestCaseDetails.*;
+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 AddlEnvironmentTests_SPEC2_17_RenderPreferences_event
+ *
+ */
+public class AddlEnvironmentTests_SPEC2_17_RenderPreferences implements Portlet, ResourceServingPortlet {
+   private static final String LOG_CLASS = 
+         AddlEnvironmentTests_SPEC2_17_RenderPreferences.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");
+
+      portletResp.setRenderParameters(portletReq.getParameterMap());
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute(THREADID_ATTR, 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(THREADID_ATTR, tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+   }
+
+   @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(THREADID_ATTR, tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+      JSR286SpecTestCaseDetails tcd = new JSR286SpecTestCaseDetails();
+
+      // Create result objects for the tests
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_RenderPreferences_deployment1 */
+      /* Details: "The portlet definition may define the preference           */
+      /* attributes a portlet uses"                                           */
+      TestResult tr0 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RENDERPREFERENCES_DEPLOYMENT1);
+      /* TODO: implement test */
+      tr0.appendTcDetail("Not implemented.");
+      tr0.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_RenderPreferences_deployment2 */
+      /* Details: "A preference attribute definition may include initial      */
+      /* default values"                                                      */
+      TestResult tr1 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RENDERPREFERENCES_DEPLOYMENT2);
+      /* TODO: implement test */
+      tr1.appendTcDetail("Not implemented.");
+      tr1.writeTo(writer);
+
+   }
+
+}

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_ResourcePreferences.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_ResourcePreferences.java b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_ResourcePreferences.java
new file mode 100644
index 0000000..371f6af
--- /dev/null
+++ b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_17_ResourcePreferences.java
@@ -0,0 +1,189 @@
+/*  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.servlet.*;
+import javax.servlet.http.*;
+import javax.portlet.tck.beans.*;
+import javax.portlet.tck.constants.*;
+import static javax.portlet.tck.beans.JSR286SpecTestCaseDetails.*;
+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 AddlEnvironmentTests_SPEC2_17_ResourcePreferences_event
+ *
+ */
+public class AddlEnvironmentTests_SPEC2_17_ResourcePreferences implements Portlet, ResourceServingPortlet {
+   private static final String LOG_CLASS = 
+         AddlEnvironmentTests_SPEC2_17_ResourcePreferences.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");
+
+      portletResp.setRenderParameters(portletReq.getParameterMap());
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute(THREADID_ATTR, 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(THREADID_ATTR, tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+      JSR286SpecTestCaseDetails tcd = new JSR286SpecTestCaseDetails();
+
+      // Create result objects for the tests
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_setValues4 */
+      /* Details: "The setValues method allows the value array to be set to   */
+      /* null"                                                                */
+      TestResult tr0 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_SETVALUES4);
+      /* TODO: implement test */
+      tr0.appendTcDetail("Not implemented.");
+      tr0.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_reset1 */
+      /* Details: "The reset method sets the value of the specified           */
+      /* preference to its default value. The actual default value itself     */
+      /* is implementation-specific and cannot be tested."                    */
+      TestResult tr1 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_RESET1);
+      /* TODO: implement test */
+      tr1.appendTcDetail("Not implemented.");
+      tr1.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_store1 */
+      /* Details: "The store method persists preference changes previously    */
+      /* made during the processAction method"                                */
+      TestResult tr2 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_STORE1);
+      /* TODO: implement test */
+      tr2.appendTcDetail("Not implemented.");
+      tr2.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_store4 */
+      /* Details: "If preference changes are made during the processAction    */
+      /* method, but the method completes without store being called, the     */
+      /* preference changes are discarded"                                    */
+      TestResult tr3 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_STORE4);
+      /* TODO: implement test */
+      tr3.appendTcDetail("Not implemented.");
+      tr3.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment3 */
+      /* Details: "A preference attribute definition may indicate if the      */
+      /* attribute is read only"                                              */
+      TestResult tr4 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_DEPLOYMENT3);
+      /* TODO: implement test */
+      tr4.appendTcDetail("Not implemented.");
+      tr4.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment4 */
+      /* Details: "If a preference attribute definition does not contain      */
+      /* the read-only setting, it will be modifiable in the processAction    */
+      /* method"                                                              */
+      TestResult tr5 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_DEPLOYMENT4);
+      /* TODO: implement test */
+      tr5.appendTcDetail("Not implemented.");
+      tr5.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment7 */
+      /* Details: "If a preference attribute definition contains the          */
+      /* read-only setting, it will not be modifiable in the processAction    */
+      /* method"                                                              */
+      TestResult tr6 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_DEPLOYMENT7);
+      /* TODO: implement test */
+      tr6.appendTcDetail("Not implemented.");
+      tr6.writeTo(writer);
+
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment10 */
+      /* Details: "A preference attribute not defined in the deployment       */
+      /* descriptor may be added programmatically in the processAction        */
+      /* method"                                                              */
+      TestResult tr7 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_17_RESOURCEPREFERENCES_DEPLOYMENT10);
+      /* TODO: implement test */
+      tr7.appendTcDetail("Not implemented.");
+      tr7.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(THREADID_ATTR, tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+      writer.write("<div id=\"AddlEnvironmentTests_SPEC2_17_ResourcePreferences\">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(\"AddlEnvironmentTests_SPEC2_17_ResourcePreferences\").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/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_18_Sessions.java
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_18_Sessions.java b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_18_Sessions.java
index 80cc92c..f53739a 100644
--- a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_18_Sessions.java
+++ b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/java/javax/portlet/tck/portlets/AddlEnvironmentTests_SPEC2_18_Sessions.java
@@ -18,29 +18,34 @@
 
 package javax.portlet.tck.portlets;
 
-import java.io.IOException;
-import java.io.PrintWriter;
-
-import java.util.Enumeration;
-import java.util.Locale;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
+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.ClassChecker;
-import javax.portlet.tck.beans.TestCaseDetails;
-import javax.portlet.tck.beans.JSR286SpecTestCaseDetails;
+import javax.servlet.*;
+import javax.servlet.http.*;
+import javax.portlet.tck.beans.*;
+import javax.portlet.tck.constants.*;
 import static javax.portlet.tck.beans.JSR286SpecTestCaseDetails.*;
-import javax.portlet.tck.beans.TestResult;
+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 AddlEnvironmentTests_SPEC2_18_Sessions_event
+ *
  */
-public class AddlEnvironmentTests_SPEC2_18_Sessions implements Portlet {
+public class AddlEnvironmentTests_SPEC2_18_Sessions implements Portlet, ResourceServingPortlet {
    private static final String LOG_CLASS = 
          AddlEnvironmentTests_SPEC2_18_Sessions.class.getName();
    private final Logger LOGGER = Logger.getLogger(LOG_CLASS);
@@ -57,301 +62,354 @@ public class AddlEnvironmentTests_SPEC2_18_Sessions implements Portlet {
    }
 
    @Override
-   public void processAction(ActionRequest actionRequest, ActionResponse actionResponse)
+   public void processAction(ActionRequest portletReq, ActionResponse portletResp)
          throws PortletException, IOException {
+      LOGGER.entering(LOG_CLASS, "main portlet processAction entry");
+
+      portletResp.setRenderParameters(portletReq.getParameterMap());
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute(THREADID_ATTR, tid);
+
+      StringWriter writer = new StringWriter();
+
    }
 
    @Override
-   public void render(RenderRequest renderRequest, RenderResponse renderResponse)
+   public void serveResource(ResourceRequest portletReq, ResourceResponse portletResp)
          throws PortletException, IOException {
-      
-      if (LOGGER.isLoggable(Level.FINE)) {
-         LOGGER.logp(Level.FINE, LOG_CLASS, "render", "Entry");
-      }
+      LOGGER.entering(LOG_CLASS, "main portlet serveResource entry");
+
+      long tid = Thread.currentThread().getId();
+      portletReq.setAttribute(THREADID_ATTR, tid);
+
+      PrintWriter writer = portletResp.getWriter();
+
+   }
+
+   @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(THREADID_ATTR, tid);
+
+      PrintWriter writer = portletResp.getWriter();
 
-      PrintWriter writer = renderResponse.getWriter();
       JSR286SpecTestCaseDetails tcd = new JSR286SpecTestCaseDetails();
 
       // Create result objects for the tests
 
-      /* TestCase: SPEC2_18_Sessions_scope1                                   */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_scope1            */
       /* Details: "PortletSession objects must be scoped at the portlet       */
       /* application context level"                                           */
-      TestResult tr0 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SCOPE1);
+      TestResult tr0 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SCOPE1);
       /* TODO: implement test */
+      tr0.appendTcDetail("Not implemented.");
+      tr0.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_scope2                                   */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_scope2            */
       /* Details: "The portlet container must not share the PortletSession    */
       /* object or the attributes stored in it among different portlet        */
       /* applications or among different user sessions"                       */
-      TestResult tr1 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SCOPE2);
+      TestResult tr1 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SCOPE2);
       /* TODO: implement test */
+      tr1.appendTcDetail("Not implemented.");
+      tr1.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_scope3                                   */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_scope3            */
       /* Details: "Any object stored in the session using the                 */
       /* APPLICATION_SCOPE is available to any portlet that belongs to the    */
       /* same portlet application and that handles a request in the same      */
       /* session"                                                             */
-      TestResult tr2 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SCOPE3);
+      TestResult tr2 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SCOPE3);
       /* TODO: implement test */
+      tr2.appendTcDetail("Not implemented.");
+      tr2.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_scope4                                   */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_scope4            */
       /* Details: "Any Object stored in the session using the PORTLET_SCOPE   */
       /* must be available to the portlet during requests for the same        */
       /* portlet window that stored the object"                               */
-      TestResult tr3 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SCOPE4);
+      TestResult tr3 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SCOPE4);
       /* TODO: implement test */
+      tr3.appendTcDetail("Not implemented.");
+      tr3.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_scope5                                   */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_scope5            */
       /* Details: "The PORTLET_SCOPE object must be stored in the             */
       /* APPLICATION_SCOPE with the attribute name                            */
       /* 'javax.portlet.p.<ID>?<ATTRIBUTE_NAME>', where <ID> must be equal    */
       /* to the ID returned by the PortletRequest.getWindowID()"              */
-      TestResult tr4 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SCOPE5);
+      TestResult tr4 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SCOPE5);
       /* TODO: implement test */
+      tr4.appendTcDetail("Not implemented.");
+      tr4.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_setAttribute1                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_setAttribute1     */
       /* Details: "The setAttribute method can bind an object to the          */
       /* session in PORTLET_SCOPE"                                            */
-      TestResult tr5 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SETATTRIBUTE1);
+      TestResult tr5 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SETATTRIBUTE1);
       /* TODO: implement test */
+      tr5.appendTcDetail("Not implemented.");
+      tr5.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_setAttribute2                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_setAttribute2     */
       /* Details: "The setAttribute method that does not take a scope         */
       /* parameter binds an object to the session in PORTLET_SCOPE"           */
-      TestResult tr6 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SETATTRIBUTE2);
+      TestResult tr6 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SETATTRIBUTE2);
       /* TODO: implement test */
+      tr6.appendTcDetail("Not implemented.");
+      tr6.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_setAttribute3                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_setAttribute3     */
       /* Details: "The setAttribute method can bind an object to the          */
       /* session in APPLICATION_SCOPE"                                        */
-      TestResult tr7 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_SETATTRIBUTE3);
+      TestResult tr7 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SETATTRIBUTE3);
       /* TODO: implement test */
+      tr7.appendTcDetail("Not implemented.");
+      tr7.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_getAttribute1                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttribute1     */
       /* Details: "The getAttribute method is used to retrieve attributes     */
       /* stored in the session in PORTLET_SCOPE"                              */
-      TestResult tr8 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_GETATTRIBUTE1);
+      TestResult tr8 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETATTRIBUTE1);
       /* TODO: implement test */
+      tr8.appendTcDetail("Not implemented.");
+      tr8.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_getAttribute2                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttribute2     */
       /* Details: "The getAttribute method that does not take a scope         */
       /* parameter retrieves attributes stored in the session in              */
       /* PORTLET_SCOPE"                                                       */
-      TestResult tr9 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_GETATTRIBUTE2);
+      TestResult tr9 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETATTRIBUTE2);
       /* TODO: implement test */
+      tr9.appendTcDetail("Not implemented.");
+      tr9.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_getAttribute3                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttribute3     */
       /* Details: "The getAttribute method is used to retrieve attributes     */
       /* stored in the session in APPLICATION_SCOPE"                          */
-      TestResult tr10 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_GETATTRIBUTE3);
+      TestResult tr10 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETATTRIBUTE3);
       /* TODO: implement test */
+      tr10.appendTcDetail("Not implemented.");
+      tr10.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_removeAttribute1                         */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_removeAttribute1  */
       /* Details: "The removeAttribute method is used to remove attributes    */
       /* stored in the session in PORTLET_SCOPE"                              */
-      TestResult tr11 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_REMOVEATTRIBUTE1);
+      TestResult tr11 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_REMOVEATTRIBUTE1);
       /* TODO: implement test */
+      tr11.appendTcDetail("Not implemented.");
+      tr11.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_removeAttribute2                         */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_removeAttribute2  */
       /* Details: "The removeAttribute method that does not take a scope      */
       /* parameter remove attributes stored in the session in                 */
       /* PORTLET_SCOPE"                                                       */
-      TestResult tr12 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_REMOVEATTRIBUTE2);
+      TestResult tr12 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_REMOVEATTRIBUTE2);
       /* TODO: implement test */
+      tr12.appendTcDetail("Not implemented.");
+      tr12.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_removeAttribute3                         */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_removeAttribute3  */
       /* Details: "The removeAttribute method is used to remove attributes    */
       /* stored in the session in APPLICATION_SCOPE"                          */
-      TestResult tr13 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_REMOVEATTRIBUTE3);
+      TestResult tr13 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_REMOVEATTRIBUTE3);
       /* TODO: implement test */
+      tr13.appendTcDetail("Not implemented.");
+      tr13.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_getAttributeNames1                       */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttributeNames1 */
       /* Details: "The getAttributeNames method can retrieve an               */
       /* Enumeration<String> of all attribute names stored in the session     */
       /* in PORTLET_SCOPE"                                                    */
-      TestResult tr14 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_GETATTRIBUTENAMES1);
+      TestResult tr14 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETATTRIBUTENAMES1);
       /* TODO: implement test */
+      tr14.appendTcDetail("Not implemented.");
+      tr14.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_getAttributeNames2                       */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttributeNames2 */
       /* Details: "The getAttributeNames method that does not take a scope    */
       /* parameter retrieves an Enumeration<String> of all attribute names    */
       /* stored in the session in PORTLET_SCOPE"                              */
-      TestResult tr15 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_GETATTRIBUTENAMES2);
+      TestResult tr15 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETATTRIBUTENAMES2);
       /* TODO: implement test */
+      tr15.appendTcDetail("Not implemented.");
+      tr15.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_getAttributeNames3                       */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttributeNames3 */
       /* Details: "The getAttributeNames method can retrieve an               */
       /* Enumeration<String> of all attribute names stored in the session     */
       /* in APPLICATION_SCOPE"                                                */
-      TestResult tr16 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_GETATTRIBUTENAMES3);
+      TestResult tr16 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETATTRIBUTENAMES3);
       /* TODO: implement test */
+      tr16.appendTcDetail("Not implemented.");
+      tr16.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_decodeAttributeName1                     */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_decodeAttributeName1 */
       /* Details: "The PortletSessionUtil.decodeAttributeName method          */
       /* returns the attribute name without the prefix for an attribute       */
-      /* name retrieved from the HTTPSession"                                 */
-      TestResult tr17 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_DECODEATTRIBUTENAME1);
+      /* name retrieved from the HttpSession"                                 */
+      TestResult tr17 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_DECODEATTRIBUTENAME1);
       /* TODO: implement test */
+      tr17.appendTcDetail("Not implemented.");
+      tr17.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_decodeAttributeName2                     */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_decodeAttributeName2 */
       /* Details: "The PortletSessionUtil.decodeAttributeName method          */
       /* returns the attribute name without the prefix for an attribute       */
       /* name retrieved from the PortletSession in APPLICATION_SCOPE"         */
-      TestResult tr18 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_DECODEATTRIBUTENAME2);
+      TestResult tr18 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_DECODEATTRIBUTENAME2);
       /* TODO: implement test */
+      tr18.appendTcDetail("Not implemented.");
+      tr18.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession1                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession1      */
       /* Details: "Data stored in the HttpSession by a servlet in the same    */
       /* web application is accessible to portlets through the                */
       /* PortletSession in APPLICATION_SCOPE"                                 */
-      TestResult tr19 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION1);
+      TestResult tr19 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION1);
       /* TODO: implement test */
+      tr19.appendTcDetail("Not implemented.");
+      tr19.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession2                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession2      */
       /* Details: "Data stored in the HttpSession by a JSP in the same web    */
       /* application is accessible to portlets through the PortletSession     */
       /* in APPLICATION_SCOPE"                                                */
-      TestResult tr20 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION2);
+      TestResult tr20 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION2);
       /* TODO: implement test */
+      tr20.appendTcDetail("Not implemented.");
+      tr20.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession3                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession3      */
       /* Details: "Data stored by portlets in the PortletSession is           */
       /* accessible to servlets and JSPs through the HttpSession"             */
-      TestResult tr21 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION3);
+      TestResult tr21 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION3);
       /* TODO: implement test */
+      tr21.appendTcDetail("Not implemented.");
+      tr21.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession4                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession4      */
       /* Details: "If the HttpSession object is invalidated, the              */
       /* PortletSession object must also be invalidated by the portlet        */
       /* container"                                                           */
-      TestResult tr22 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION4);
+      TestResult tr22 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION4);
       /* TODO: implement test */
+      tr22.appendTcDetail("Not implemented.");
+      tr22.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession5                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession5      */
       /* Details: "If the PortletSession object is invalidated by a           */
       /* portlet, the portlet container must invalidate the associated        */
       /* HttpSession object"                                                  */
-      TestResult tr23 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION5);
+      TestResult tr23 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION5);
       /* TODO: implement test */
+      tr23.appendTcDetail("Not implemented.");
+      tr23.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession6                             */
-      /* Details: "The attribute names retrieved from the HTTPSession must    */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession6      */
+      /* Details: "The attribute names retrieved from the HttpSession must    */
       /* be the same as those retrieve from the PortletSession if             */
       /* APPLICATION_SCOPE scope is used"                                     */
-      TestResult tr24 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION6);
+      TestResult tr24 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION6);
       /* TODO: implement test */
+      tr24.appendTcDetail("Not implemented.");
+      tr24.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession7                             */
-      /* Details: "The attribute names retrieved from the HTTPSession must    */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession7      */
+      /* Details: "The attribute names retrieved from the HttpSession must    */
       /* have the speficied prefixing if PORTLET_SCOPE scope is used"         */
-      TestResult tr25 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION7);
+      TestResult tr25 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION7);
       /* TODO: implement test */
+      tr25.appendTcDetail("Not implemented.");
+      tr25.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession8                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession8      */
       /* Details: "The portlet session follows the timeout behavior of the    */
       /* servlet session"                                                     */
-      TestResult tr26 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION8);
+      TestResult tr26 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION8);
       /* TODO: implement test */
+      tr26.appendTcDetail("Not implemented.");
+      tr26.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession9                             */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession9      */
       /* Details: "The portlet session follows the last accessed times        */
       /* behavior of the servlet session"                                     */
-      TestResult tr27 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION9);
+      TestResult tr27 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION9);
       /* TODO: implement test */
+      tr27.appendTcDetail("Not implemented.");
+      tr27.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession11                            */
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession11     */
       /* Details: "The portlet session follows the same semantic              */
       /* considerations as the servlet session"                               */
-      TestResult tr28 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION11);
+      TestResult tr28 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_HTTPSESSION11);
       /* TODO: implement test */
+      tr28.appendTcDetail("Not implemented.");
+      tr28.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession12                            */
-      /* Details: "The PortletSession getCreationTime method provides the     */
-      /* same functionality as the corresponding HTTPSession method"          */
-      TestResult tr29 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION12);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getCreationTime   */
+      /* Details: "The PortletSession.getCreationTime method provides the     */
+      /* same functionality as the corresponding                              */
+      /* HttpSession.getCreationTime method"                                  */
+      TestResult tr29 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETCREATIONTIME);
       /* TODO: implement test */
+      tr29.appendTcDetail("Not implemented.");
+      tr29.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession13                            */
-      /* Details: "The PortletSession getId method provides the same          */
-      /* functionality as the corresponding HTTPSession method"               */
-      TestResult tr30 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION13);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getId             */
+      /* Details: "The PortletSession.getId method provides the same          */
+      /* functionality as the corresponding HttpSession.getId method"         */
+      TestResult tr30 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETID);
       /* TODO: implement test */
+      tr30.appendTcDetail("Not implemented.");
+      tr30.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession14                            */
-      /* Details: "The PortletSession getLastAccessTime method provides the   */
-      /* same functionality as the corresponding HTTPSession method"          */
-      TestResult tr31 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION14);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getLastAccessTime */
+      /* Details: "The PortletSession.getLastAccessTime method provides the   */
+      /* same functionality as the corresponding                              */
+      /* HttpSession.getLastAccessTime method"                                */
+      TestResult tr31 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETLASTACCESSTIME);
       /* TODO: implement test */
+      tr31.appendTcDetail("Not implemented.");
+      tr31.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession15                            */
-      /* Details: "The PortletSession getMaxInctiveInterval method provides   */
-      /* the same functionality as the corresponding HTTPSession method"      */
-      TestResult tr32 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION15);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_getMaxInctiveInterval */
+      /* Details: "The PortletSession.getMaxInctiveInterval method provides   */
+      /* the same functionality as the corresponding                          */
+      /* HttpSession.getMaxInctiveInterval method"                            */
+      TestResult tr32 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_GETMAXINCTIVEINTERVAL);
       /* TODO: implement test */
+      tr32.appendTcDetail("Not implemented.");
+      tr32.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession16                            */
-      /* Details: "The PortletSession invalidate method provides the same     */
-      /* functionality as the corresponding HTTPSession method"               */
-      TestResult tr33 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION16);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_invalidate        */
+      /* Details: "The PortletSession.invalidate method provides the same     */
+      /* functionality as the corresponding HttpSession.invalidate method"    */
+      TestResult tr33 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_INVALIDATE);
       /* TODO: implement test */
+      tr33.appendTcDetail("Not implemented.");
+      tr33.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession17                            */
-      /* Details: "The PortletSession isNew method provides the same          */
-      /* functionality as the corresponding HTTPSession method"               */
-      TestResult tr34 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION17);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_isNew             */
+      /* Details: "The PortletSession.isNew method provides the same          */
+      /* functionality as the corresponding HttpSession.isNew method"         */
+      TestResult tr34 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_ISNEW);
       /* TODO: implement test */
+      tr34.appendTcDetail("Not implemented.");
+      tr34.writeTo(writer);
 
-      /* TestCase: SPEC2_18_Sessions_httpSession18                            */
-      /* Details: "The PortletSession setMaxInactiveInterval method           */
-      /* provides the same functionality as the corresponding HTTPSession     */
-      /* method"                                                              */
-      TestResult tr35 = tcd.getTestResultFailed(SPEC2_18_SESSIONS_HTTPSESSION18);
+      /* TestCase: V2AddlEnvironmentTests_SPEC2_18_Sessions_setMaxInactiveInterval */
+      /* Details: "The PortletSession.setMaxInactiveInterval method           */
+      /* provides the same functionality as the corresponding                 */
+      /* HttpSession.setMaxInactiveInterval method"                           */
+      TestResult tr35 = tcd.getTestResultFailed(V2ADDLENVIRONMENTTESTS_SPEC2_18_SESSIONS_SETMAXINACTIVEINTERVAL);
       /* TODO: implement test */
-
-
-
-      // Write the results to the output stream
-
-      tr0.writeTo(writer);
-      tr1.writeTo(writer);
-      tr2.writeTo(writer);
-      tr3.writeTo(writer);
-      tr4.writeTo(writer);
-      tr5.writeTo(writer);
-      tr6.writeTo(writer);
-      tr7.writeTo(writer);
-      tr8.writeTo(writer);
-      tr9.writeTo(writer);
-      tr10.writeTo(writer);
-      tr11.writeTo(writer);
-      tr12.writeTo(writer);
-      tr13.writeTo(writer);
-      tr14.writeTo(writer);
-      tr15.writeTo(writer);
-      tr16.writeTo(writer);
-      tr17.writeTo(writer);
-      tr18.writeTo(writer);
-      tr19.writeTo(writer);
-      tr20.writeTo(writer);
-      tr21.writeTo(writer);
-      tr22.writeTo(writer);
-      tr23.writeTo(writer);
-      tr24.writeTo(writer);
-      tr25.writeTo(writer);
-      tr26.writeTo(writer);
-      tr27.writeTo(writer);
-      tr28.writeTo(writer);
-      tr29.writeTo(writer);
-      tr30.writeTo(writer);
-      tr31.writeTo(writer);
-      tr32.writeTo(writer);
-      tr33.writeTo(writer);
-      tr34.writeTo(writer);
+      tr35.appendTcDetail("Not implemented.");
       tr35.writeTo(writer);
 
-
    }
 
 }
-

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/resources/xml-resources/additionalTCs.xml
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/resources/xml-resources/additionalTCs.xml b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/resources/xml-resources/additionalTCs.xml
index 8752f5e..8b6197f 100644
--- a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/resources/xml-resources/additionalTCs.xml
+++ b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/resources/xml-resources/additionalTCs.xml
@@ -17,106 +17,99 @@
     specific language governing permissions and limitations
     under the License.     
 -->
-<!--
-   Defines the test cases for this module.
-   For this module, the test case names are not automatically generated from.
-   the deployment descriptor, so edit this file to add new test cases.
-   This allows a portlet to define multiple test cases.
--->
 <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
 <properties>
 <!-- JSR 286 API AddlEnvironmentTests test case names and page mappings -->
-<entry key="SPEC2_10_Context_portletContextServletContext1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext7">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext8">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext9">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext10">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext11">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext12">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext13">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext14">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext15">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext16">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext17">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_Context_portletContextServletContext18">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_containerRuntimeOptions1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes5">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes6">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes7">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes8">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes9">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes0">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes11">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes12">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_10_ContextOptions_actionScopedRequestAttributes13">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_values6">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_values7">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_values8">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_values9">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_values10">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_setValues4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_reset1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_reset2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_store1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_store2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_store3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_store4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_store5">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_store6">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment5">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment6">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment7">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment8">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment9">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment10">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment11">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_17_Preferences_deployment12">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_scope1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_scope2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_scope3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_scope4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_scope5">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_setAttribute1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_setAttribute2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_setAttribute3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_getAttribute1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_getAttribute2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_getAttribute3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_removeAttribute1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_removeAttribute2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_removeAttribute3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_getAttributeNames1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_getAttributeNames2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_getAttributeNames3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_decodeAttributeName1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_decodeAttributeName2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession1">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession2">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession3">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession4">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession5">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession6">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession7">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession8">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession9">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession11">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession12">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession13">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession14">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession15">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession16">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession17">V2AddlEnvironmentTests</entry>
-<entry key="SPEC2_18_Sessions_httpSession18">V2AddlEnvironmentTests</entry>
-
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_portletContextServletContext1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_portletContextServletContext2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_portletContextServletContext3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_portletContextServletContext4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getAttribute">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getAttributeNames">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getInitParameter">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getInitParameterNames">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getMimeType">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getRealPath">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getResource">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getResourcePaths">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_getResourceAsStream">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_log">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_removeAttribute">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_Context_setAttribute">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_containerRuntimeOptions1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes5">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes6">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes7">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes8">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes9">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes0">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes11">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes12">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_10_ContextOptions_actionScopedRequestAttributes13">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_setValues4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_reset1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_store1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_store4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_deployment3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_deployment4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_deployment7">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ActionPreferences_deployment10">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_setValues4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_reset1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_store1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_store4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_deployment3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_deployment4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_deployment7">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_EventPreferences_deployment10">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_setValues4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_reset1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_store1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_store4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment7">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_ResourcePreferences_deployment10">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_RenderPreferences_deployment1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_17_RenderPreferences_deployment2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_scope1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_scope2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_scope3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_scope4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_scope5">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_setAttribute1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_setAttribute2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_setAttribute3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttribute1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttribute2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttribute3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_removeAttribute1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_removeAttribute2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_removeAttribute3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttributeNames1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttributeNames2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getAttributeNames3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_decodeAttributeName1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_decodeAttributeName2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession1">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession2">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession3">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession4">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession5">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession6">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession7">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession8">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession9">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_httpSession11">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getCreationTime">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getId">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getLastAccessTime">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_getMaxInctiveInterval">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_invalidate">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_isNew">V2AddlEnvironmentTests</entry>
+<entry key="V2AddlEnvironmentTests_SPEC2_18_Sessions_setMaxInactiveInterval">V2AddlEnvironmentTests</entry>
 </properties>

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/portlet.xml
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/portlet.xml b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/portlet.xml
index 0573396..f0b87de 100644
--- a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/portlet.xml
+++ b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/portlet.xml
@@ -20,25 +20,16 @@
 <portlet-app xmlns="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd http://java.sun.com/xml/ns/portlet/portlet-app_2_0.xsd"
-   version="2.0" id="javax.portlet-tck-AddlEnvironmentTests">
-
+   xmlns:tck="http://www.apache.org/portals/pluto/portlet-tck_3.0"
+   version="2.0" id="V2AddlEnvironmentTests">
    <portlet>
       <portlet-name>AddlEnvironmentTests_SPEC2_10_Context</portlet-name>
       <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_10_Context</portlet-class>
-
-      <init-param>
-         <name>TestParameter</name>
-         <value>TestValue</value>
-      </init-param>
-
       <expiration-cache>0</expiration-cache>
-
       <supports>
          <mime-type>text/html</mime-type>
       </supports>
-
       <supported-locale>en_US</supported-locale>
-
       <portlet-info>
          <title>AddlEnvironmentTests_SPEC2_10_Context</title>
       </portlet-info>
@@ -47,69 +38,122 @@
    <portlet>
       <portlet-name>AddlEnvironmentTests_SPEC2_10_ContextOptions</portlet-name>
       <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_10_ContextOptions</portlet-class>
-
-      <init-param>
-         <name>TestParameter</name>
-         <value>TestValue</value>
-      </init-param>
-
       <expiration-cache>0</expiration-cache>
-
       <supports>
          <mime-type>text/html</mime-type>
       </supports>
-
       <supported-locale>en_US</supported-locale>
-
       <portlet-info>
          <title>AddlEnvironmentTests_SPEC2_10_ContextOptions</title>
       </portlet-info>
    </portlet>
 
    <portlet>
-      <portlet-name>AddlEnvironmentTests_SPEC2_17_Preferences</portlet-name>
-      <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_17_Preferences</portlet-class>
-
-      <init-param>
-         <name>TestParameter</name>
-         <value>TestValue</value>
-      </init-param>
+      <portlet-name>AddlEnvironmentTests_SPEC2_17_ActionPreferences</portlet-name>
+      <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_17_ActionPreferences</portlet-class>
+      <expiration-cache>0</expiration-cache>
+      <supports>
+         <mime-type>text/html</mime-type>
+      </supports>
+      <supported-locale>en_US</supported-locale>
+      <portlet-info>
+         <title>AddlEnvironmentTests_SPEC2_17_ActionPreferences</title>
+      </portlet-info>
+   </portlet>
 
+   <portlet>
+      <portlet-name>AddlEnvironmentTests_SPEC2_17_EventPreferences</portlet-name>
+      <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_17_EventPreferences</portlet-class>
       <expiration-cache>0</expiration-cache>
+      <supports>
+         <mime-type>text/html</mime-type>
+      </supports>
+      <supported-locale>en_US</supported-locale>
+      <portlet-info>
+         <title>AddlEnvironmentTests_SPEC2_17_EventPreferences</title>
+      </portlet-info>
+      <supported-publishing-event>
+         <qname>tck:AddlEnvironmentTests_SPEC2_17_EventPreferences</qname>
+      </supported-publishing-event>
+   </portlet>
 
+   <portlet>
+      <portlet-name>AddlEnvironmentTests_SPEC2_17_EventPreferences_event</portlet-name>
+      <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_17_EventPreferences_event</portlet-class>
+      <expiration-cache>0</expiration-cache>
       <supports>
          <mime-type>text/html</mime-type>
       </supports>
+      <supported-locale>en_US</supported-locale>
+      <portlet-info>
+         <title>AddlEnvironmentTests_SPEC2_17_EventPreferences_event</title>
+      </portlet-info>
+      <supported-processing-event>
+         <qname>tck:AddlEnvironmentTests_SPEC2_17_EventPreferences</qname>
+      </supported-processing-event>
+   </portlet>
 
+   <portlet>
+      <portlet-name>AddlEnvironmentTests_SPEC2_17_ResourcePreferences</portlet-name>
+      <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_17_ResourcePreferences</portlet-class>
+      <expiration-cache>0</expiration-cache>
+      <supports>
+         <mime-type>text/html</mime-type>
+      </supports>
       <supported-locale>en_US</supported-locale>
+      <portlet-info>
+         <title>AddlEnvironmentTests_SPEC2_17_ResourcePreferences</title>
+      </portlet-info>
+   </portlet>
 
+   <portlet>
+      <portlet-name>AddlEnvironmentTests_SPEC2_17_RenderPreferences</portlet-name>
+      <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_17_RenderPreferences</portlet-class>
+      <expiration-cache>0</expiration-cache>
+      <supports>
+         <mime-type>text/html</mime-type>
+      </supports>
+      <supported-locale>en_US</supported-locale>
       <portlet-info>
-         <title>AddlEnvironmentTests_SPEC2_17_Preferences</title>
+         <title>AddlEnvironmentTests_SPEC2_17_RenderPreferences</title>
       </portlet-info>
    </portlet>
 
    <portlet>
       <portlet-name>AddlEnvironmentTests_SPEC2_18_Sessions</portlet-name>
       <portlet-class>javax.portlet.tck.portlets.AddlEnvironmentTests_SPEC2_18_Sessions</portlet-class>
-
-      <init-param>
-         <name>TestParameter</name>
-         <value>TestValue</value>
-      </init-param>
-
       <expiration-cache>0</expiration-cache>
-
       <supports>
          <mime-type>text/html</mime-type>
       </supports>
-
       <supported-locale>en_US</supported-locale>
-
       <portlet-info>
          <title>AddlEnvironmentTests_SPEC2_18_Sessions</title>
       </portlet-info>
    </portlet>
 
-
-
+   <event-definition>
+      <qname>tck:AddlPortletTests_SPEC2_5_EventHandling</qname>
+      <value-type>java.lang.String</value-type>
+   </event-definition>
+
+   <event-definition>
+      <qname>tck:AddlPortletTests_SPEC2_15_Event</qname>
+      <value-type>java.lang.String</value-type>
+   </event-definition>
+
+   <event-definition>
+      <qname>tck:AddlPortletTests_SPEC2_15_EventEventHandling</qname>
+      <value-type>java.lang.String</value-type>
+   </event-definition>
+
+   <event-definition>
+      <qname>tck:AddlEnvironmentTests_SPEC2_17_EventPreferences</qname>
+      <value-type>java.lang.String</value-type>
+   </event-definition>
+
+   <public-render-parameter>
+      <identifier>tckPRP1</identifier>
+      <qname>tck:tckPRP1</qname>
+   </public-render-parameter>
 </portlet-app>

http://git-wip-us.apache.org/repos/asf/portals-pluto/blob/23a1c547/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/web.xml
----------------------------------------------------------------------
diff --git a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/web.xml b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/web.xml
index ff05605..a45527b 100644
--- a/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/web.xml
+++ b/portlet-tck_3.0/V2AddlEnvironmentTests/src/main/webapp/WEB-INF/web.xml
@@ -18,6 +18,6 @@
     under the License.     
 -->
 <web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
-	<display-name>javax.portlet-tck-AddlEnvironmentTests</display-name>
-</web-app>
+   <display-name>javax.portlet-tck-AddlEnvironmentTests</display-name>
 
+</web-app>