beehive-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From r...@apache.org
Subject svn commit: rev 46234 - in incubator/beehive/trunk/netui: src/compiler/org/apache/beehive/netui/compiler src/compiler/org/apache/beehive/netui/compiler/grammar src/pageflow/org/apache/beehive/netui/pageflow src/scoping/org/apache/beehive/netui/pageflow/scoping src/scoping/org/apache/beehive/netui/pageflow/scoping/internal test/webapps/drt/coreWeb/WEB-INF/src/mockportal test/webapps/drt/coreWeb/pageFlowCore/pfPageInput test/webapps/drt/testRecorder/config test/webapps/drt/testRecorder/tests
Date Fri, 17 Sep 2004 05:20:33 GMT
Author: rich
Date: Thu Sep 16 22:20:32 2004
New Revision: 46234

Modified:
   incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/FlowControllerInfo.java
   incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ControllerGrammar.java
   incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ForwardGrammar.java
   incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ValidXmlFileType.java
   incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathOrActionType.java
   incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathType.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/Forward.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowPageFilter.java
   incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/ScopedServletUtils.java
   incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/internal/ScopedRequestImpl.java
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/mockportal/MockPortletTag.java
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/pfPageInput/PageInputController.jpf
   incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
   incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortal.xml
   incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortalListenTo.xml
Log:
- Fixed the runtime type check on action outputs (@Jpf.ActionOutput, on @Jpf.Forward) to allow for interfaces.  (This check is only run when not in production mode.)
- Fixed to prevent the ServletContext attribute under org.apache.struts.Globals.MESSAGES_KEY from getting blown away when forwarding to a Struts JSP that's not in a page flow directory.
- Added the set of referenced files (from @Jpf.Forward annotations) to the result Map from the page flow annotation processor.
- Fixed the MockPortal and MockPortalListenTo BVTs.

DRT/BVT: netui (WinXP)
BB: self (linux)



Modified: incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/FlowControllerInfo.java
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/FlowControllerInfo.java	(original)
+++ incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/FlowControllerInfo.java	Thu Sep 16 22:20:32 2004
@@ -43,7 +43,7 @@
     private List< TypeDeclaration > _sharedFlowTypeHierarchy;
     private List< String > _sharedFlowTypeNameHierarchy;
     private List< File > _sharedFlowFileHierarchy;
-    private List< File > _referencedPageFlows = new ArrayList< File >();
+    private List< File > _referencedFiles = new ArrayList< File >();
     private File _sourceFile;
     private boolean _isBuilding = false;
     private String _controllerClassName = null;
@@ -196,29 +196,18 @@
     }
     
     /**
-     * Get a list of referenced page flows (page flows that appear in Jpf.Forward paths).
+     * Get a list of referenced files (files that appear in Jpf.Forward paths).
      */ 
-    public List< File > getReferencedPageFlows()
+    public List< File > getReferencedFiles()
     {
-        return _referencedPageFlows;
+        return _referencedFiles;
     }
     
-    /**
-     * @param uri the webapp-relative URI (or, if not prefixed by '/', a URI relative to the current source file ) to
-     *     the referenced page flow.
-     */ 
-    public void addReferencedPageFlowURI( String uri )
+    public void addReferencedFile( File file )
     {
-        File parentFile = uri.startsWith( "/" ) ? _webappRoot : _sourceFile.getParentFile();
-        File file = new File( parentFile.getPath() + File.separatorChar + uri );
-        
-        //
-        // The file may not exist.  This is OK -- there will be a compiler warning.  But we don't need to add a
-        // dependency on a nonexistant file.
-        //
-        if ( file.exists() && ! file.equals( _sourceFile ) )
+        if ( ! file.equals( _sourceFile ) )
         {
-            _referencedPageFlows.add( file );
+            _referencedFiles.add( file );
         }
     }
     

Modified: incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ControllerGrammar.java
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ControllerGrammar.java	(original)
+++ incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ControllerGrammar.java	Thu Sep 16 22:20:32 2004
@@ -41,8 +41,8 @@
         addMemberType( LOGIN_REQUIRED_ATTR, new AnnotationMemberType( null, this ) );
         addMemberType( ROLES_ALLOWED_ATTR, new AnnotationMemberType( null, this ) );
         addMemberType( READONLY_ATTR, new AnnotationMemberType( VERSION_8_SP2_STRING, this ) );
-        addMemberType( STRUTSMERGE_ATTR, new ValidXmlFileType( StrutsConfigDocument.type, null, this ) );
-        addMemberType( VALIDATOR_MERGE_ATTR, new ValidXmlFileType( FormValidationDocument.type, null, this ) );
+        addMemberType( STRUTSMERGE_ATTR, new ValidXmlFileType( StrutsConfigDocument.type, null, this, fcInfo ) );
+        addMemberType( VALIDATOR_MERGE_ATTR, new ValidXmlFileType( FormValidationDocument.type, null, this, fcInfo ) );
         
         addMemberArrayGrammar( FORWARDS_ATTR, new ForwardGrammar( env, diags, null, rvc, fcInfo ) );
         addMemberArrayGrammar( CATCHES_ATTR, new CatchGrammar( env, diags, null, rvc, CONTROLLER_TAG_NAME, fcInfo ) );

Modified: incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ForwardGrammar.java
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ForwardGrammar.java	(original)
+++ incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ForwardGrammar.java	Thu Sep 16 22:20:32 2004
@@ -169,19 +169,6 @@
                     : null;
             getFlowControllerInfo().addReturnAction( actionName, formTypeName );
         }
-        
-        //
-        // Keep track of referenced page flows.
-        //
-        if ( valueName.equals( PATH_ATTR ) )
-        {
-            String uri = ( String ) value.getValue();
-            
-            if ( uri.endsWith( JPF_FILE_EXTENSION_DOT ) && uri.indexOf( ':' ) == -1 )
-            {
-                getFlowControllerInfo().addReferencedPageFlowURI( uri );
-            }
-        }
     }
     
     protected class ForwardNameType

Modified: incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ValidXmlFileType.java
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ValidXmlFileType.java	(original)
+++ incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/ValidXmlFileType.java	Thu Sep 16 22:20:32 2004
@@ -18,6 +18,7 @@
 package org.apache.beehive.netui.compiler.grammar;
 
 import org.apache.beehive.netui.compiler.AnnotationGrammar;
+import org.apache.beehive.netui.compiler.FlowControllerInfo;
 import org.apache.xmlbeans.SchemaType;
 import org.apache.xmlbeans.XmlOptions;
 import org.apache.xmlbeans.XmlObject;
@@ -39,9 +40,10 @@
     private SchemaType _schema;
     private static Map _parseResults = Collections.synchronizedMap( new HashMap() );
     
-    public ValidXmlFileType( SchemaType schema, String requiredRuntimeVersion, AnnotationGrammar parentGrammar )
+    public ValidXmlFileType( SchemaType schema, String requiredRuntimeVersion, AnnotationGrammar parentGrammar,
+                             FlowControllerInfo fcInfo )
     {
-        super( false, requiredRuntimeVersion, parentGrammar );
+        super( false, requiredRuntimeVersion, parentGrammar, fcInfo );
         _schema = schema;
     }
 

Modified: incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathOrActionType.java
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathOrActionType.java	(original)
+++ incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathOrActionType.java	Thu Sep 16 22:20:32 2004
@@ -33,13 +33,10 @@
 public class WebappPathOrActionType
         extends WebappPathType
 {
-    private FlowControllerInfo _fcInfo;
-    
     public WebappPathOrActionType( boolean pathMustBeRelative, String requiredRuntimeVersion,
                                    AnnotationGrammar parentGrammar, FlowControllerInfo fcInfo )
     {
-        super( pathMustBeRelative, requiredRuntimeVersion, parentGrammar );
-        _fcInfo = fcInfo;
+        super( pathMustBeRelative, requiredRuntimeVersion, parentGrammar, fcInfo );
     }
 
     public Object onCheck( AnnotationTypeElementDeclaration valueDecl, AnnotationValue value,
@@ -58,7 +55,8 @@
 
                 if ( ! foundIt )
                 {
-                    List< TypeDeclaration > sharedFlowTypeHierarchy = _fcInfo.getSharedFlowTypeHierarchy();
+                    List< TypeDeclaration > sharedFlowTypeHierarchy =
+                            getFlowControllerInfo().getSharedFlowTypeHierarchy();
                     
                     if ( sharedFlowTypeHierarchy != null && sharedFlowTypeHierarchy.size() > 0 )
                     {

Modified: incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathType.java
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathType.java	(original)
+++ incubator/beehive/trunk/netui/src/compiler/org/apache/beehive/netui/compiler/grammar/WebappPathType.java	Thu Sep 16 22:20:32 2004
@@ -20,6 +20,7 @@
 import org.apache.beehive.netui.compiler.AnnotationMemberType;
 import org.apache.beehive.netui.compiler.AnnotationGrammar;
 import org.apache.beehive.netui.compiler.CompilerUtils;
+import org.apache.beehive.netui.compiler.FlowControllerInfo;
 import org.apache.beehive.netui.compiler.model.NoWebInfDirectoryException;
 import org.apache.beehive.netui.compiler.model.StrutsApp;
 import com.sun.mirror.declaration.AnnotationValue;
@@ -47,12 +48,15 @@
             };
     
     private boolean _pathMustBeRelative = false;
+    private FlowControllerInfo _flowControllerInfo;
     
     
-    public WebappPathType( boolean pathMustBeRelative, String requiredRuntimeVersion, AnnotationGrammar parentGrammar )
+    public WebappPathType( boolean pathMustBeRelative, String requiredRuntimeVersion, AnnotationGrammar parentGrammar,
+                           FlowControllerInfo fcInfo )
     {
         super( requiredRuntimeVersion, parentGrammar );
         _pathMustBeRelative = pathMustBeRelative;
+        _flowControllerInfo = fcInfo;
     }
 
     public Object onCheck( AnnotationTypeElementDeclaration valueDecl, AnnotationValue value,
@@ -131,8 +135,7 @@
         }
         
         //
-        // In certain error conditions, we can't determine the file.  In this case, just
-        // ignore.
+        // In certain error conditions, we can't determine the file.  In this case, just ignore.
         //
         else if ( jpfFile != null && stringValue.indexOf( '/' ) != 0 )  // under this pageflow's directory
         {
@@ -191,6 +194,8 @@
             }
         }
         
+        if ( fileToCheck != null ) _flowControllerInfo.addReferencedFile( fileToCheck );
+        
         return null;
     }
     
@@ -221,4 +226,9 @@
     {
         return false;
     }    
+    
+    protected FlowControllerInfo getFlowControllerInfo()
+    {
+        return _flowControllerInfo;
+    }
 }

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/Forward.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/Forward.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/Forward.java	Thu Sep 16 22:20:32 2004
@@ -540,59 +540,87 @@
                 }
             }
             
-            //
-            // Make sure required action outputs are present, and are of the right type (only make the latter
-            // check in iterative-dev mode.
-            //
-            PageFlowActionForward.ActionOutput[] actionOutputs = fc.getActionOutputs();
+            checkActionOutputs( fc );
+        }
+        
+        _init = true;
+    }
+
+    /**
+     * Make sure required action outputs are present, and are of the right type (only make the latter check when not
+     * in production mode
+     */
+    private void checkActionOutputs( PageFlowActionForward fc )
+    {
+        PageFlowActionForward.ActionOutput[] actionOutputs = fc.getActionOutputs();
             
-            for ( int i = 0; i < actionOutputs.length; ++i )
-            {
-                PageFlowActionForward.ActionOutput actionOutput = actionOutputs[i];
+        for ( int i = 0; i < actionOutputs.length; ++i )
+        {
+            PageFlowActionForward.ActionOutput actionOutput = actionOutputs[i];
                 
-                if ( ! actionOutput.getNullable()
-                     && ( _actionOutputs == null || _actionOutputs.get( actionOutput.getName() ) == null ) )
-                {
-                    throw new MissingActionOutputException( _mappingPath, _flowController, actionOutput.getName(),
-                                                            getName() );
-                }
+            if ( ! actionOutput.getNullable()
+                 && ( _actionOutputs == null || _actionOutputs.get( actionOutput.getName() ) == null ) )
+            {
+                throw new MissingActionOutputException( _mappingPath, _flowController, actionOutput.getName(),
+                                                        getName() );
+            }
                 
-                //
-                // If we're *not* in production mode, do some (expensive) checks to ensure that the types for the
-                // action outputs match their declared types.
-                //
-                if ( ! InternalUtils.getServerAdapter().isInProductionMode() && _actionOutputs != null )
+            //
+            // If we're *not* in production mode, do some (expensive) checks to ensure that the types for the
+            // action outputs match their declared types.
+            //
+            if ( ! InternalUtils.getServerAdapter().isInProductionMode() && _actionOutputs != null )
+            {
+                Object actualActionOutput = _actionOutputs.get( actionOutput.getName() );
+                    
+                if ( actualActionOutput != null )
                 {
-                    Object actualActionOutput = _actionOutputs.get( actionOutput.getName() );
+                    String expectedTypeName = actionOutput.getType();
+                    int expectedArrayDims = 0;
                     
-                    if ( actualActionOutput != null )
+                    while ( expectedTypeName.endsWith( "[]" ) )
                     {
-                        String expectedTypeName = actionOutput.getType();
-                        Class actualType = actualActionOutput.getClass();
-                        String arraySuffix = "";
-                        
-                        while ( actualType.isArray() )
-                        {
-                            arraySuffix += "[]";
-                            actualType = actualType.getComponentType();
-                        }
-                        
-                        String actualTypeName = actualType.getName() + arraySuffix;
+                        ++expectedArrayDims;
+                        expectedTypeName = expectedTypeName.substring( 0, expectedTypeName.length() - 2 );
+                    }
+                    
+                    Class expectedType = null;
+                    
+                    try
+                    {
+                        expectedType = Class.forName( expectedTypeName );
+                    }
+                    catch ( ClassNotFoundException e )
+                    {
+                        _log.error( "Could not load expected action output type " + expectedTypeName
+                                    + " for action output '" + actionOutput.getName() + "' on forward '"
+                                    + fc.getName() + "'; skipping type check." );
+                        continue;
+                    }
+                    
+                    Class actualType = actualActionOutput.getClass();
+                    int actualArrayDims = 0;
+                    StringBuilder arraySuffix = new StringBuilder();
+                    
+                    while ( actualType.isArray() && actualArrayDims <= expectedArrayDims )
+                    {
+                        ++actualArrayDims;
+                        arraySuffix.append( "[]" );
+                        actualType = actualType.getComponentType();
+                    }
                         
-                        if ( ! actualTypeName.equals( expectedTypeName ) )
-                        {
-                            throw new MismatchedActionOutputException( _mappingPath, _flowController,
-                                                                       actionOutput.getName(), getName(),
-                                                                       expectedTypeName, actualTypeName );
-                        }
+                    if ( actualArrayDims != expectedArrayDims || ! expectedType.isAssignableFrom( actualType ) )
+                    {
+                        throw new MismatchedActionOutputException( _mappingPath, _flowController,
+                                                                   actionOutput.getName(), getName(),
+                                                                   expectedTypeName,
+                                                                   actualType.getName() + arraySuffix );
                     }
                 }
             }
         }
-        
-        _init = true;
     }
-
+                
     /**
      * Set the current ActionMapping and associated FlowController.  Normally, this method is called
      * by the framework, but you can use it to initialize the Forward object in order to call {@link #getPath}.

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowPageFilter.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowPageFilter.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowPageFilter.java	Thu Sep 16 22:20:32 2004
@@ -30,8 +30,10 @@
 import java.util.Set;
 
 import org.apache.struts.util.RequestUtils;
+import org.apache.struts.util.MessageResources;
 import org.apache.struts.action.ActionServlet;
 import org.apache.struts.config.ModuleConfig;
+import org.apache.struts.Globals;
 
 import org.apache.beehive.netui.script.common.BundleMap;
 import org.apache.beehive.netui.script.common.ImplicitObjectUtil;
@@ -126,6 +128,7 @@
             try
             {
                 ModuleConfig prevModuleConfig = RequestUtils.getRequestModuleConfig( httpRequest );
+                MessageResources prevMessageResources = ( MessageResources ) request.getAttribute( Globals.MESSAGES_KEY );
                 initializeModule( httpRequest, httpResponse );
                 
                 //
@@ -141,6 +144,7 @@
                 if ( curJpf == null )
                 {
                     InternalUtils.setCurrentModule( prevModuleConfig, request );
+                    request.setAttribute( Globals.MESSAGES_KEY, prevMessageResources );
                 }
                 
                 

Modified: incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/ScopedServletUtils.java
==============================================================================
--- incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/ScopedServletUtils.java	(original)
+++ incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/ScopedServletUtils.java	Thu Sep 16 22:20:32 2004
@@ -57,6 +57,7 @@
     
     /**
      * Get the cached wrapper servlet request.  If none exists, creates one and caches it.
+     * @deprecated Use {@link #getScopedRequest(HttpServletRequest, String, ServletContext, Object, boolean)}.
      *
      * @param realRequest the "real" (outer) HttpServletRequest, which will be wrapped.
      * @param overrideURI the request-URI for the wrapped object.  This is a <i>webapp-relative</i> URI,
@@ -64,10 +65,24 @@
      * @param servletContext the current ServletContext.
      * @return the cached (or newly-created) ScopedRequest.
      */
-    public static ScopedRequest getScopedRequest( HttpServletRequest realRequest,
-                                                  String overrideURI,
-                                                  ServletContext servletContext,
-                                                  Object scopeKey )
+    public static ScopedRequest getScopedRequest( HttpServletRequest realRequest, String overrideURI,
+                                                  ServletContext servletContext, Object scopeKey )
+    {
+        return getScopedRequest( realRequest, overrideURI, servletContext, scopeKey, false );
+    }
+    
+    /**
+     * Get the cached wrapper servlet request.  If none exists, creates one and caches it.
+     *
+     * @param realRequest the "real" (outer) HttpServletRequest, which will be wrapped.
+     * @param overrideURI the request-URI for the wrapped object.  This is a <i>webapp-relative</i> URI,
+     *                    i.e., it does not include the context path.
+     * @param servletContext the current ServletContext.
+     * @return the cached (or newly-created) ScopedRequest.
+     */
+    public static ScopedRequest getScopedRequest( HttpServletRequest realRequest, String overrideURI,
+                                                  ServletContext servletContext, Object scopeKey,
+                                                  boolean seeOuterRequestAttributes )
     {
         assert ! ( realRequest instanceof ScopedRequest );
         
@@ -87,7 +102,8 @@
                 overrideURI = "/" + overrideURI;
             }
             
-            scopedRequest = new ScopedRequestImpl( realRequest, overrideURI, scopeKey, servletContext );
+            scopedRequest = 
+                new ScopedRequestImpl( realRequest, overrideURI, scopeKey, servletContext, seeOuterRequestAttributes );
             realRequest.setAttribute( requestAttr, scopedRequest );            
         }
         
@@ -195,7 +211,7 @@
     public static HttpServletRequest getOuterRequest( HttpServletRequest request )
     {
         ScopedRequest scopedRequest = unwrapRequest( request );
-        return ( scopedRequest != null ? scopedRequest.getOuterRequest() : request );
+        return scopedRequest != null ? scopedRequest.getOuterRequest() : request;
     }
     
     /**
@@ -266,13 +282,12 @@
         }
         
         ScopedRequest scopedRequest = unwrapRequest( request );
-        return ( scopedRequest != null ? scopedRequest.getScopedName( attrName ) : attrName );
+        return scopedRequest != null ? scopedRequest.getScopedName( attrName ) : attrName;
     }
     
     /**
-     * If the request is a ScopedRequest, this returns an attribute whose name is scoped to
-     * that request's scope-ID; otherwise, it is a straight passthrough to
-     * {@link javax.servlet.http.HttpSession#getAttribute}.
+     * If the request is a ScopedRequest, this returns an attribute whose name is scoped to that request's scope-ID;
+     * otherwise, it is a straight passthrough to {@link HttpSession#getAttribute}.
      * 
      * @exclude
      */ 
@@ -291,9 +306,8 @@
     }
 
     /**
-     * If the request is a ScopedRequest, this sets an attribute whose name is scoped to
-     * that request's scope-ID; otherwise, it is a straight passthrough to
-     * {@link javax.servlet.http.HttpSession#setAttribute}.
+     * If the request is a ScopedRequest, this sets an attribute whose name is scoped to that request's scope-ID;
+     * otherwise, it is a straight passthrough to {@link HttpSession#setAttribute}.
      * 
      * @exclude
      */ 
@@ -303,9 +317,8 @@
     }
 
     /**
-     * If the request is a ScopedRequest, this removes an attribute whose name is scoped to
-     * that request's scope-ID; otherwise, it is a straight passthrough to
-     * {@link javax.servlet.http.HttpSession#removeAttribute}.
+     * If the request is a ScopedRequest, this removes an attribute whose name is scoped to that request's scope-ID;
+     * otherwise, it is a straight passthrough to {@link HttpSession#removeAttribute}.
      * 
      * @exclude
      */ 
@@ -425,12 +438,4 @@
         request.setAttribute( DECODED_URI_ATTR, decodedURI );
         return decodedURI;
     }
-    
-    /*
-    public static void setAttribute( HttpServletRequest request, boolean hideFromScopedRequests,
-                                     boolean excludeFromAutoPersist )
-    {
-        
-    }
-    */
 }

Modified: incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/internal/ScopedRequestImpl.java
==============================================================================
--- incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/internal/ScopedRequestImpl.java	(original)
+++ incubator/beehive/trunk/netui/src/scoping/org/apache/beehive/netui/pageflow/scoping/internal/ScopedRequestImpl.java	Thu Sep 16 22:20:32 2004
@@ -32,6 +32,9 @@
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.HashMap;
+import java.util.List;
+import java.util.Set;
+import java.util.HashSet;
 
 import org.apache.log4j.Logger;
 
@@ -48,51 +51,56 @@
         implements ScopedRequest
 {
     private String _requestURI;
-    private ScopedSession _session;
-    private ServletContext _context;
     private String _forwardedURI;
     private ScopedAttributeContainer _scopedContainer;
-    private ArrayList _listenScopes;
+    private List _listenScopes;
     private String _overridePathInfo = null;
     private boolean _isActiveRequest = false;
-    private boolean _useScopedSession = false;
-    private HashMap _seeThroughAttrs = new HashMap();
-    private HashMap _additionalParameters;
+    private boolean _seeOuterRequestAttributes = false;
+    private Set _hiddenOuterRequestAttrs;
+    private Set _visibleOuterRequestAttrs;
+    private Map _additionalParameters;
 
 
     static final String ATTR_PREFIX = "_netui:";
-    private static final String OUR_SESSION_ATTR_NAME = ATTR_PREFIX + "scopedSession";
-    private static final String STORED_ATTRS_ATTR_NAME = ATTR_PREFIX + "storedAttrs";
+    private static final String OUR_SESSION_ATTR = ATTR_PREFIX + "scopedSession";
+    private static final String STORED_ATTRS_ATTR = ATTR_PREFIX + "storedAttrs";
+    private static final String HIDDEN_OUTER_REQUEST_ATTRS_ATTR = ATTR_PREFIX + "hiddenAttrs";
 
     private static final Logger logger = Logger.getLogger( ScopedRequestImpl.class );
 
 
-    public ScopedRequestImpl( HttpServletRequest request, String overrideRequestURI, Object scopeKey,
-                              ServletContext context, boolean useScopedSession )
+    public ScopedRequestImpl( HttpServletRequest req, String overrideRequestURI, Object scopeKey,
+                              ServletContext servletContext, boolean seeOuterRequestAttributes )
     {
-        super( request );
+        super( req );
+        
         _scopedContainer = new ScopedAttributeContainer( scopeKey );
         _requestURI = overrideRequestURI != null ? overrideRequestURI : "";
-        _context = context;
-        _useScopedSession = useScopedSession;
+        _seeOuterRequestAttributes = seeOuterRequestAttributes;
+        
+        if ( seeOuterRequestAttributes )
+        {
+            // TODO: this isn't initialized in the ServletContext yet -- the mechanism probably will change.
+            _hiddenOuterRequestAttrs = ( Set ) servletContext.getAttribute( HIDDEN_OUTER_REQUEST_ATTRS_ATTR );
+            if ( _hiddenOuterRequestAttrs == null ) _hiddenOuterRequestAttrs = new HashSet();
+        }
+        
+        if ( ! seeOuterRequestAttributes ) _visibleOuterRequestAttrs = new HashSet();
     }
 
-    public ScopedRequestImpl( HttpServletRequest request, String overrideRequestURI, Object scopeKey,
+    /**
+     * @deprecated Use {@link #ScopedRequestImpl(HttpServletRequest, String, Object, ServletContext, boolean)}.
+     */ 
+    public ScopedRequestImpl( HttpServletRequest req, String overrideRequestURI, Object scopeKey,
                               ServletContext context )
     {
-        this( request, overrideRequestURI, scopeKey, context, false );
+        this( req, overrideRequestURI, scopeKey, context, false );
     }
 
     public String getRequestedSessionId()
     {
-        if ( _useScopedSession )
-        {
-            return _scopedContainer.getScopedName( getOuterRequest().getRequestedSessionId() );
-        }
-        else
-        {
-            return super.getRequestedSessionId();
-        }
+        return super.getRequestedSessionId();
     }
 
     public String getRequestURI()
@@ -120,53 +128,6 @@
         return ScopedServletUtils.getRelativeURI( this );
     }
 
-    /**
-     * Gets the scoped HttpSession associated with this scoped request.  Note that this
-     * scoped session is stored in the main (outer) session.
-     */
-    public HttpSession getSession( boolean createIfNotExist )
-    {
-        if ( _useScopedSession )
-        {
-            if ( _session == null )
-            {
-                HttpSession realSession = getOuterRequest().getSession( createIfNotExist );
-
-                if ( realSession != null )
-                {
-                    String attrName = _scopedContainer.getScopedName( OUR_SESSION_ATTR_NAME );
-                    _session = ( ScopedSession ) realSession.getAttribute( attrName );
-
-                    if ( _session == null && createIfNotExist )
-                    {
-                        _session = new ScopedSession( realSession, _context, getScopeKey() );
-                        realSession.setAttribute( attrName, _session );
-                    }
-                }
-            }
-
-            //
-            // Reinitialize the ScopedSession's internal HttpSession.  It can't store it in
-            // a non-transient way, because it itself is stored in the session.
-            //
-            if ( _session != null )
-            {
-                _session.setSession( getOuterRequest().getSession(), _context );
-            }
-
-            return _session;
-        }
-        else
-        {
-            return super.getSession( createIfNotExist );
-        }
-    }
-
-    public final HttpSession getSession()
-    {
-        return getSession( true );
-    }
-
     public String getParameter( String paramName )
     {
         String retVal = getLocalParameter( paramName );
@@ -441,17 +402,7 @@
      */
     public void persistAttributes()
     {
-        String attrName;
-
-        if ( _useScopedSession )
-        {
-            attrName = STORED_ATTRS_ATTR_NAME;
-        }
-        else
-        {
-            attrName = getScopedName( STORED_ATTRS_ATTR_NAME );
-        }
-
+        String attrName = getScopedName( STORED_ATTRS_ATTR );
         getSession().setAttribute( attrName, _scopedContainer.getSerializableAttrs() );
     }
 
@@ -460,17 +411,7 @@
      */
     public void restoreAttributes()
     {
-        String attrName;
-
-        if ( _useScopedSession )
-        {
-            attrName = STORED_ATTRS_ATTR_NAME;
-        }
-        else
-        {
-            attrName = getScopedName( STORED_ATTRS_ATTR_NAME );
-        }
-
+        String attrName = getScopedName( STORED_ATTRS_ATTR );
         Map savedAttrs = ( Map ) getSession().getAttribute( attrName );
         Map currentAttrs = _scopedContainer.getAttrMap();
         
@@ -492,17 +433,26 @@
 
     public final Object getAttribute( String attrName )
     {
-        if ( _seeThroughAttrs.containsKey( attrName ) )
+        ServletRequest outerRequest = getRequest();
+        
+        if ( ! _seeOuterRequestAttributes && _visibleOuterRequestAttrs.contains( attrName ) )
         {
-            return getRequest().getAttribute( attrName );
+            return outerRequest.getAttribute( attrName );
         }
 
-        return _scopedContainer.getAttribute( attrName );
+        Object value = _scopedContainer.getAttribute( attrName );
+        
+        if ( value == null && _seeOuterRequestAttributes && ! _hiddenOuterRequestAttrs.contains( attrName ) )
+        {
+            value = outerRequest.getAttribute( attrName );
+        }
+        
+        return value;
     }
 
     public final void setAttribute( String attrName, Object o )
     {
-        if ( _seeThroughAttrs.containsKey( attrName ) )
+        if ( ! _seeOuterRequestAttributes && _visibleOuterRequestAttrs.contains( attrName ) )
         {
             getRequest().setAttribute( attrName, o );
         }
@@ -514,34 +464,52 @@
 
     public final Enumeration getAttributeNames()
     {
-        ArrayList list = new ArrayList();
+        Set set = new HashSet();
 
-        for ( Iterator i = _seeThroughAttrs.keySet().iterator(); i.hasNext(); )
+        if ( ! _seeOuterRequestAttributes )
         {
-            list.add( i.next() );
+            for ( Enumeration e = getRequest().getAttributeNames(); e.hasMoreElements(); )
+            {
+                Object attrName = e.nextElement();
+                if ( _visibleOuterRequestAttrs.contains( attrName ) ) set.add( attrName );
+            }
         }
 
         for ( Enumeration e = _scopedContainer.getAttributeNames(); e.hasMoreElements(); )
         {
-            list.add( e.nextElement() );
+            set.add( e.nextElement() );
+        }
+        
+        if ( _seeOuterRequestAttributes )
+        {
+            for ( Enumeration e = getRequest().getAttributeNames(); e.hasMoreElements(); )
+            {
+                Object attrName = e.nextElement();
+                if ( ! _hiddenOuterRequestAttrs.contains( attrName ) ) set.add( attrName );
+            }
         }
 
-        return Collections.enumeration( list );
+        return Collections.enumeration( set );
     }
 
     public final void removeAttribute( String attrName )
     {
-        if ( _seeThroughAttrs.containsKey( attrName ) )
+        if ( ! _seeOuterRequestAttributes && _visibleOuterRequestAttrs.contains( attrName ) )
         {
             getRequest().removeAttribute( attrName );
         }
-
-        _scopedContainer.removeAttribute( attrName );
+        else
+        {
+            _scopedContainer.removeAttribute( attrName );
+        }
     }
 
     public void registerOuterAttribute( String attrName )
     {
-        _seeThroughAttrs.put( attrName, null );
+        assert ! _seeOuterRequestAttributes :
+                "(attribute " + attrName + ") " +
+                "this method is not valid unless the ScopedRequest is configured not to see outer request attributes";
+        _visibleOuterRequestAttrs.add( attrName );
     }
 
     public final Object getScopeKey()
@@ -551,24 +519,6 @@
 
     public void renameScope( Object newScopeKey )
     {
-        if ( _useScopedSession )
-        {
-            HttpSession realSession = getOuterRequest().getSession( false );
-
-            if ( realSession != null )
-            {
-                String realSessionAttr = _scopedContainer.getScopedName( OUR_SESSION_ATTR_NAME );
-                Object ourSession = realSession.getAttribute( realSessionAttr );
-                realSessionAttr = ScopedServletUtils.getScopedName( OUR_SESSION_ATTR_NAME, newScopeKey );
-                realSession.setAttribute( realSessionAttr, ourSession );
-            }
-
-            if ( _session != null )
-            {
-                _session.renameScope( newScopeKey );
-            }
-        }
-
         _scopedContainer.renameScope( newScopeKey );
     }
 
@@ -578,9 +528,9 @@
 
         if ( realSession != null )
         {
-            String realSessionAttr = ScopedServletUtils.getScopedName( OUR_SESSION_ATTR_NAME, oldScopeKey );
+            String realSessionAttr = ScopedServletUtils.getScopedName( OUR_SESSION_ATTR, oldScopeKey );
             Object ourSession = realSession.getAttribute( realSessionAttr );
-            realSessionAttr = ScopedServletUtils.getScopedName( OUR_SESSION_ATTR_NAME, newScopeKey );
+            realSessionAttr = ScopedServletUtils.getScopedName( OUR_SESSION_ATTR, newScopeKey );
             realSession.setAttribute( realSessionAttr, ourSession );
         }
     }
@@ -614,7 +564,7 @@
      */
     public boolean hasListenScopes()
     {
-         return (_listenScopes != null && _listenScopes.size() > 0);
+         return _listenScopes != null && _listenScopes.size() > 0;
     }
 }
 

Modified: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/mockportal/MockPortletTag.java
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/mockportal/MockPortletTag.java	(original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/src/mockportal/MockPortletTag.java	Thu Sep 16 22:20:32 2004
@@ -70,7 +70,7 @@
             //
             String requestURI = currentURL != null ? outerRequest.getContextPath() + currentURL : null;
             ScopedRequest scopedRequest = 
-                    ScopedServletUtils.getScopedRequest( outerRequest, requestURI, outerServletContext, _portletID );
+                    ScopedServletUtils.getScopedRequest( outerRequest, requestURI, outerServletContext, _portletID, true );
             ScopedResponse scopedResponse =
                     ScopedServletUtils.getScopedResponse( outerResponse, scopedRequest );
             
@@ -255,7 +255,7 @@
     {
         HttpServletRequest outerRequest = ( HttpServletRequest ) pageContext.getRequest();        
         ScopedRequest scopedRequest = 
-                ScopedServletUtils.getScopedRequest( outerRequest, null, pageContext.getServletContext(), _portletID );
+                ScopedServletUtils.getScopedRequest( outerRequest, null, pageContext.getServletContext(), _portletID, true );
         scopedRequest.persistAttributes();
         
         pageContext.removeAttribute( "mockCurrentUrl" );

Modified: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/pfPageInput/PageInputController.jpf
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/pfPageInput/PageInputController.jpf	(original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/pageFlowCore/pfPageInput/PageInputController.jpf	Thu Sep 16 22:20:32 2004
@@ -20,6 +20,7 @@
 import org.apache.beehive.netui.pageflow.PageFlowController;
 import org.apache.beehive.netui.pageflow.Forward;
 import org.apache.beehive.netui.pageflow.annotations.Jpf;
+import java.io.Serializable;
 
 @Jpf.Controller(
     forwards = {
@@ -39,177 +40,8 @@
             name = "globalSuccessMissingButNullable",
             actionOutputs={@Jpf.ActionOutput(name="missingButNullable", type=String.class, required=false)},
             navigateTo = Jpf.NavigateTo.currentPage) 
-    })
-@Jpf.ViewProperties(
-    value = {
-        "<!-- This data is auto-generated. Hand-editing this section is not recommended. -->",
-        "<view-properties>",
-        "<pageflow-object id='pageflow:/pageFlowCore/pageInput/PageInputController.jpf'/>",
-        "<pageflow-object id='action:begin.do'>",
-        "  <property value='460' name='x'/>",
-        "  <property value='60' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:missingNotNullable1.do'>",
-        "  <property value='100' name='x'/>",
-        "  <property value='300' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:missingNotNullable2.do'>",
-        "  <property value='380' name='x'/>",
-        "  <property value='300' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:mismatched1.do'>",
-        "  <property value='240' name='x'/>",
-        "  <property value='300' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:mismatched2.do'>",
-        "  <property value='540' name='x'/>",
-        "  <property value='300' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:good1.do'>",
-        "  <property value='680' name='x'/>",
-        "  <property value='300' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:good2.do'>",
-        "  <property value='820' name='x'/>",
-        "  <property value='300' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:missingButNullable1.do'>",
-        "  <property value='300' name='x'/>",
-        "  <property value='60' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action:missingButNullable2.do'>",
-        "  <property value='620' name='x'/>",
-        "  <property value='60' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:missingNotNullable1.do@'>",
-        "  <property value='424,100,100,100' name='elbowsX'/>",
-        "  <property value='161,161,208,256' name='elbowsY'/>",
-        "  <property value='West_0' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:missingNotNullable2.do@'>",
-        "  <property value='424,380,380,380' name='elbowsX'/>",
-        "  <property value='183,183,219,256' name='elbowsY'/>",
-        "  <property value='West_2' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:missingButNullable1.do@'>",
-        "  <property value='449,449,300,300' name='elbowsX'/>",
-        "  <property value='136,120,120,104' name='elbowsY'/>",
-        "  <property value='North_0' name='fromPort'/>",
-        "  <property value='South_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:mismatched2.do@'>",
-        "  <property value='496,540,540,540' name='elbowsX'/>",
-        "  <property value='183,183,219,256' name='elbowsY'/>",
-        "  <property value='East_2' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:mismatched1.do@'>",
-        "  <property value='424,240,240,240' name='elbowsX'/>",
-        "  <property value='172,172,214,256' name='elbowsY'/>",
-        "  <property value='West_1' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:missingButNullable2.do@'>",
-        "  <property value='471,471,620,620' name='elbowsX'/>",
-        "  <property value='136,120,120,104' name='elbowsY'/>",
-        "  <property value='North_2' name='fromPort'/>",
-        "  <property value='South_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:good1.do@'>",
-        "  <property value='496,680,680,680' name='elbowsX'/>",
-        "  <property value='172,172,214,256' name='elbowsY'/>",
-        "  <property value='East_1' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='action-call:@page:index.jsp@#@action:good2.do@'>",
-        "  <property value='496,820,820,820' name='elbowsX'/>",
-        "  <property value='161,161,208,256' name='elbowsY'/>",
-        "  <property value='East_0' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='page:index.jsp'>",
-        "  <property value='460' name='x'/>",
-        "  <property value='180' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:path#index#index.jsp#@action:begin.do@'>",
-        "  <property value='460,460,460,460' name='elbowsX'/>",
-        "  <property value='104,120,120,136' name='elbowsY'/>",
-        "  <property value='South_1' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "  <property value='index' name='label'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='return-to:@forward:return-to#success#currentPage#@action:missingNotNullable1.do@@'>",
-        "  <property value='100' name='x'/>",
-        "  <property value='420' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#success#currentPage#@action:missingNotNullable1.do@'>",
-        "  <property value='100,100,89,89' name='elbowsX'/>",
-        "  <property value='344,360,360,376' name='elbowsY'/>",
-        "  <property value='South_1' name='fromPort'/>",
-        "  <property value='North_0' name='toPort'/>",
-        "  <property value='success' name='label'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='return-to:@forward:return-to#success#currentPage#@action:mismatched1.do@@'>",
-        "  <property value='240' name='x'/>",
-        "  <property value='420' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#success#currentPage#@action:mismatched1.do@'>",
-        "  <property value='229,229,240,240' name='elbowsX'/>",
-        "  <property value='344,360,360,376' name='elbowsY'/>",
-        "  <property value='South_0' name='fromPort'/>",
-        "  <property value='North_1' name='toPort'/>",
-        "  <property value='success' name='label'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='return-to:@forward:return-to#success#currentPage#@action:good1.do@@'>",
-        "  <property value='680' name='x'/>",
-        "  <property value='420' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#success#currentPage#@action:good1.do@'>",
-        "  <property value='680,680,669,669' name='elbowsX'/>",
-        "  <property value='344,360,360,376' name='elbowsY'/>",
-        "  <property value='South_1' name='fromPort'/>",
-        "  <property value='North_0' name='toPort'/>",
-        "  <property value='success' name='label'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='return-to:@forward:return-to#success#currentPage#@action:missingButNullable1.do@@'>",
-        "  <property value='140' name='x'/>",
-        "  <property value='60' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#success#currentPage#@action:missingButNullable1.do@'>",
-        "  <property value='264,220,220,176' name='elbowsX'/>",
-        "  <property value='52,52,52,52' name='elbowsY'/>",
-        "  <property value='West_1' name='fromPort'/>",
-        "  <property value='East_1' name='toPort'/>",
-        "  <property value='success' name='label'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='return-to:@forward:return-to#globalSuccessMissingNotNullable#currentPage@'>",
-        "  <property value='60' name='x'/>",
-        "  <property value='40' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#globalSuccessMissingNotNullable#currentPage'/>",
-        "<pageflow-object id='return-to:@forward:return-to#globalSuccessMismatched#currentPage@'>",
-        "  <property value='85' name='x'/>",
-        "  <property value='65' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#globalSuccessMismatched#currentPage'/>",
-        "<pageflow-object id='return-to:@forward:return-to#globalSuccessGood#currentPage@'>",
-        "  <property value='110' name='x'/>",
-        "  <property value='90' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#globalSuccessGood#currentPage'/>",
-        "<pageflow-object id='return-to:@forward:return-to#globalSuccessMissingButNullable#currentPage@'>",
-        "  <property value='135' name='x'/>",
-        "  <property value='115' name='y'/>",
-        "</pageflow-object>",
-        "<pageflow-object id='forward:return-to#globalSuccessMissingButNullable#currentPage'/>",
-        "<pageflow-object id='action:lots.do'>",
-        "  <property value='460' name='x'/>",
-        "  <property value='420' name='y'/>",
-        "</pageflow-object>",
-        "</view-properties>"
-    })
+    }
+)
 public class PageInputController extends PageFlowController
 {
     /**
@@ -326,7 +158,7 @@
             @Jpf.Forward(
                 name = "success",
                 actionOutputs={
-                    @Jpf.ActionOutput(name="pi1", type=String.class),
+                    @Jpf.ActionOutput(name="pi1", type=Serializable.class),  // an interface
                     @Jpf.ActionOutput(name="pi2", type=String[].class),
                     @Jpf.ActionOutput(name="pi3", type=String[][].class)
                 },

Modified: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml	(original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml	Thu Sep 16 22:20:32 2004
@@ -3063,7 +3063,7 @@
       </test>
       <test>
          <name>MockPortal</name>
-         <description>Tests basic link navigation, form submittal, nesting, return-to, and scoping in our simulated portal.</description>
+         <description>Tests basic link navigation, form submittal, nesting, and scoping in our simulated portal.</description>
          <webapp>coreWeb</webapp>
          <categories>
             <category>bvt</category>
@@ -3075,7 +3075,7 @@
       </test>
       <test>
          <name>MockPortalListenTo</name>
-         <description>Tests 'listenTo' and exception handling under portal.</description>
+         <description>Tests 'listenTo' and exception handling under our simulated portal.</description>
          <webapp>coreWeb</webapp>
          <categories>
             <category>bvt</category>

Modified: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortal.xml
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortal.xml	(original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortal.xml	Thu Sep 16 22:20:32 2004
@@ -1,92 +1,142 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+   <ses:sessionName>MockPortal</ses:sessionName>
+   <ses:tester>rich</ses:tester>
+   <ses:startDate>16 Sep 2004, 10:33:07.241 PM MDT</ses:startDate>
+   <ses:description>Smoke test for portal-friendly request/session scoping functionality.</ses:description>
+   <ses:tests>
+      <ses:test>
+         <ses:testNumber>1</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
+<tr bordercolor="White"><td bgcolor="#EEEEFF">
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>begin</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/index.jsp</b></font><br>
+<font color="green">Action result isRedirect: <b>false</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
+</td></tr>
+<tr><td>
+
+
+
+
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <title>
+            Mock Portal Smoke Test
+        </title>
+    </head>
+    <body>
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestANetui_Form_0" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=submit&smokeTestA_submit=true" method="post">
+            data: <input type="text" name="smokeTestA{pageFlow.data}">
+            <input type="submit" value="submit">
+        </form>
+
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=goNested&smokeTestA_submit=true">goNested</a>
+    </body>
+</html>
+</td></tr>
+</table><br><br>
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
+<tr bordercolor="White"><td bgcolor="#EEEEFF">
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>begin</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/index.jsp</b></font><br>
+<font color="green">Action result isRedirect: <b>false</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
+</td></tr>
+<tr><td>
+
+
+
+
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <title>
+            Mock Portal Smoke Test
+        </title>
+    </head>
+    <body>
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestBNetui_Form_0" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=submit&smokeTestB_submit=true" method="post">
+            data: <input type="text" name="smokeTestB{pageFlow.data}">
+            <input type="submit" value="submit">
+        </form>
+
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=goNested&smokeTestB_submit=true">goNested</a>
+    </body>
+</html>
+</td></tr>
+</table><br><br>
+
 
-<recorderSession xmlns="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
 
-  <sessionName>MockPortal</sessionName>
-  <tester>rich</tester>
-  <startDate>10 Sep 2003, 05:35:29.201 PM MDT</startDate>
-  <description>Tests basic link navigation, form submittal, nesting, return-to, and scoping in our simulated portal.</description>
-
-  <tests>
-  <test>
-    <testNumber>1</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/MockPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>*/*</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip, deflate, x-gzip, compress, x-compress</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>Keep-Alive, TE</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </header>
-        <header>
-          <name>Cookie2</name>
-          <value>$Version="1"</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>TE</name>
-          <value>trailers, deflate, gzip, compress</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.failMode</name>
-          <value>stop</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testID</name>
-          <value>265121:f78dd78901:-7e33</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testNumber</name>
-          <value>1</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal (/mockportal)</title>
 </head>
@@ -95,355 +145,332 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>2</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>POST</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>smokeTestA_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestAaltAction</ses:name>
+                  <ses:value>submit</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestA{pageFlow.data}</ses:name>
+                  <ses:value>one</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>content-length</ses:name>
+                  <ses:value>33</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>content-type</ses:name>
+                  <ses:value>application/x-www-form-urlencoded</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/MockPortal.jsp</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>begin</b></font><br>
-<font color="green">Action result URI: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>submit</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/results.jsp</b></font><br>
 <font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/results.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <title>
+            Mock Portal Smoke Test
+        </title>
+    </head>
+    <body>
+        <h3>Mock Portal Smoke Test</h3>
 
-<script language="JavaScript" type="text/JavaScript">
-<!--
+        data: <b><span>one</span></b>
+        <br/>
+        <br/>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=begin&smokeTestA_submit=true">go back</a>
+    </body>
+</html>
+</td></tr>
+</table><br><br>
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
+<tr bordercolor="White"><td bgcolor="#EEEEFF">
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
+</td></tr>
+<tr><td>
 
-// **** This section contains functions typically run as events ****
 
 
-// submit the form from an Anchor or ImageAnchor
-// Search for the form by actionName,
-// Replace the action with the passed in action
-// Submit the form
-function anchor_submit_form(netuiName, newAction)
-{
-  for (var i=0; i<document.forms.length; i++) {
-     if (document.forms[i].id == netuiName) {
-        document.forms[i].method = "POST";
-        document.forms[i].action = newAction;
-        document.forms[i].submit();
-     }
-   }
-}
--->
-</script>
 
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
 <head>
-        <title>return-to test</title>
+        <title>
+            Mock Portal Smoke Test
+        </title>
     </head>
-
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo1Netui_Form_0" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=input&returnTo1_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.foo}" value="init foo"/>
-                        
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.bar}" value="init bar"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPage&returnTo1_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideInputs&returnTo1_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideForm&returnTo1_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPage&returnTo1_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideInputs&returnTo1_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideForm&returnTo1_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPage&returnTo1_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideInputs&returnTo1_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideForm&returnTo1_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=goNested&returnTo1_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=begin&returnTo1_submit=true">start over</a>          
-
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestBNetui_Form_1" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=submit&smokeTestB_submit=true" method="post">
+            data: <input type="text" name="smokeTestB{pageFlow.data}">
+            <input type="submit" value="submit">
         </form>
-    </body></html>
+
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=goNested&smokeTestB_submit=true">goNested</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+
+
+<html>
+<head>
+<title>Mock Portal (/mockportal)</title>
+</head>
+
+<h3>Mock Portal (/mockportal)</h3>
+<body>
+
+    
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>3</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>POST</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>smokeTestB_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestBaltAction</ses:name>
+                  <ses:value>submit</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestB{pageFlow.data}</ses:name>
+                  <ses:value>two</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>content-length</ses:name>
+                  <ses:value>33</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>content-type</ses:name>
+                  <ses:value>application/x-www-form-urlencoded</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=submit&amp;smokeTestA_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo2</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>begin</b></font><br>
-<font color="green">Action result URI: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
-<font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/results.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <title>
+            Mock Portal Smoke Test
+        </title>
+    </head>
+    <body>
+        <h3>Mock Portal Smoke Test</h3>
 
-<script language="JavaScript" type="text/JavaScript">
-<!--
+        data: <b><span>one</span></b>
+        <br/>
+        <br/>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=begin&smokeTestA_submit=true">go back</a>
+    </body>
+</html>
+</td></tr>
+</table><br><br>
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
+<tr bordercolor="White"><td bgcolor="#EEEEFF">
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>submit</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/results.jsp</b></font><br>
+<font color="green">Action result isRedirect: <b>false</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/results.jsp</b></font><br>
+</td></tr>
+<tr><td>
 
-// **** This section contains functions typically run as events ****
 
 
-// submit the form from an Anchor or ImageAnchor
-// Search for the form by actionName,
-// Replace the action with the passed in action
-// Submit the form
-function anchor_submit_form(netuiName, newAction)
-{
-  for (var i=0; i<document.forms.length; i++) {
-     if (document.forms[i].id == netuiName) {
-        document.forms[i].method = "POST";
-        document.forms[i].action = newAction;
-        document.forms[i].submit();
-     }
-   }
-}
--->
-</script>
 
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
 <head>
-        <title>return-to test</title>
+        <title>
+            Mock Portal Smoke Test
+        </title>
     </head>
-
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo2Netui_Form_0" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=input&returnTo2_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo2{actionForm.foo}" value="init foo"/>
-                        
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo2{actionForm.bar}" value="init bar"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPage&returnTo2_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageWithForm&returnTo2_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideInputs&returnTo2_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideForm&returnTo2_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPage&returnTo2_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageWithForm&returnTo2_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageOverrideInputs&returnTo2_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageOverrideForm&returnTo2_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPage&returnTo2_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageWithForm&returnTo2_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageOverrideInputs&returnTo2_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageOverrideForm&returnTo2_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=goNested&returnTo2_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=begin&returnTo2_submit=true">start over</a>          
+        <h3>Mock Portal Smoke Test</h3>
 
-        </form>
-    </body></html>
+        data: <b><span>two</span></b>
+        <br/>
+        <br/>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=begin&smokeTestB_submit=true">go back</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
-
-</body>
-</html>]]></responseBody>
-
-    </response>
 
-    <testResults>
-      <testStatus>fail</testStatus>
 
-    </testResults>
-  </test>
-  <test>
-    <testNumber>2</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/MockPortal.jsp</uri>
-      <method>POST</method>
-
-      <parameters>
-        <parameter>
-          <name>returnTo1_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>returnTo1altAction</name>
-          <value>input</value>
-        </parameter>
-        <parameter>
-          <name>returnTo1{actionForm.bar}</name>
-          <value>"foo" is blank</value>
-        </parameter>
-        <parameter>
-          <name>returnTo1{actionForm.foo}</name>
-          <value></value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, application/x-shockwave-flash, */*</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip, deflate, x-gzip, compress, x-compress</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us</value>
-        </header>
-        <header>
-          <name>Cache-Control</name>
-          <value>no-cache</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>Keep-Alive, TE</value>
-        </header>
-        <header>
-          <name>Content-length</name>
-          <value>126</value>
-        </header>
-        <header>
-          <name>Content-type</name>
-          <value>application/x-www-form-urlencoded</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </header>
-        <header>
-          <name>Cookie2</name>
-          <value>$Version="1"</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>TE</name>
-          <value>trailers, deflate, gzip, compress</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.failMode</name>
-          <value>stop</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testID</name>
-          <value>265121:f78dd78901:-7e33</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testNumber</name>
-          <value>2</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal (/mockportal)</title>
 </head>
@@ -452,328 +479,154 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>4</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>smokeTestA_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestAaltAction</ses:name>
+                  <ses:value>begin</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=submit&amp;smokeTestB_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>input</b></font><br>
-<font color="green">Action result URI: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>begin</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/index.jsp</b></font><br>
 <font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
-
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
-
-<script language="JavaScript" type="text/JavaScript">
-<!--
-
-// **** This section contains functions typically run as events ****
-
-
-// submit the form from an Anchor or ImageAnchor
-// Search for the form by actionName,
-// Replace the action with the passed in action
-// Submit the form
-function anchor_submit_form(netuiName, newAction)
-{
-  for (var i=0; i<document.forms.length; i++) {
-     if (document.forms[i].id == netuiName) {
-        document.forms[i].method = "POST";
-        document.forms[i].action = newAction;
-        document.forms[i].submit();
-     }
-   }
-}
--->
-</script>
 
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
 <head>
-        <title>return-to test</title>
+        <title>
+            Mock Portal Smoke Test
+        </title>
     </head>
-
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo1Netui_Form_0" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=input&returnTo1_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.foo}" value=""/>
-                        <font color="red">not null, ok?
-</font>
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.bar}" value="&quot;foo&quot; is blank"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPage&returnTo1_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideInputs&returnTo1_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideForm&returnTo1_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPage&returnTo1_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideInputs&returnTo1_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideForm&returnTo1_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPage&returnTo1_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideInputs&returnTo1_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideForm&returnTo1_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=goNested&returnTo1_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=begin&returnTo1_submit=true">start over</a>          
-
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestANetui_Form_0" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=submit&smokeTestA_submit=true" method="post">
+            data: <input type="text" name="smokeTestA{pageFlow.data}" value="one">
+            <input type="submit" value="submit">
         </form>
-    </body></html>
+
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=goNested&smokeTestA_submit=true">goNested</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo2</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/results.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
-        <title>return-to test</title>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <title>
+            Mock Portal Smoke Test
+        </title>
     </head>
-
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo2Netui_Form_1" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=input&returnTo2_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo2{actionForm.foo}" value="init foo"/>
-                        
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo2{actionForm.bar}" value="init bar"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPage&returnTo2_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_1","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageWithForm&returnTo2_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideInputs&returnTo2_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideForm&returnTo2_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPage&returnTo2_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_1","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageWithForm&returnTo2_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageOverrideInputs&returnTo2_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageOverrideForm&returnTo2_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPage&returnTo2_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_1","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageWithForm&returnTo2_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageOverrideInputs&returnTo2_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageOverrideForm&returnTo2_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=goNested&returnTo2_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=begin&returnTo2_submit=true">start over</a>          
+        <h3>Mock Portal Smoke Test</h3>
 
-        </form>
-    </body></html>
+        data: <b><span>two</span></b>
+        <br/>
+        <br/>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=begin&smokeTestB_submit=true">go back</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
-
-</body>
-</html>]]></responseBody>
-
-    </response>
 
-    <testResults>
-      <testStatus>fail</testStatus>
 
-    </testResults>
-  </test>
-  <test>
-    <testNumber>3</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/MockPortal.jsp</uri>
-      <method>POST</method>
-
-      <parameters>
-        <parameter>
-          <name>returnTo2_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>returnTo2altAction</name>
-          <value>input</value>
-        </parameter>
-        <parameter>
-          <name>returnTo2{actionForm.bar}</name>
-          <value>init bar</value>
-        </parameter>
-        <parameter>
-          <name>returnTo2{actionForm.foo}</name>
-          <value>init foo</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, application/x-shockwave-flash, */*</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip, deflate, x-gzip, compress, x-compress</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us</value>
-        </header>
-        <header>
-          <name>Cache-Control</name>
-          <value>no-cache</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>Keep-Alive, TE</value>
-        </header>
-        <header>
-          <name>Content-length</name>
-          <value>124</value>
-        </header>
-        <header>
-          <name>Content-type</name>
-          <value>application/x-www-form-urlencoded</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </header>
-        <header>
-          <name>Cookie2</name>
-          <value>$Version="1"</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>TE</name>
-          <value>trailers, deflate, gzip, compress</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.failMode</name>
-          <value>stop</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testID</name>
-          <value>265121:f78dd78901:-7e33</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testNumber</name>
-          <value>3</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal (/mockportal)</title>
 </head>
@@ -782,243 +635,152 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>5</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>smokeTestA_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestAaltAction</ses:name>
+                  <ses:value>goNested</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=begin&amp;smokeTestA_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>goNested</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/nested/index.jsp</b></font><br>
+<font color="green">Action result isRedirect: <b>false</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.nested.NestedController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/nested/index.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
-        <title>return-to test</title>
-    </head>
 
+
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <base href="http://localhost:8080/coreWeb/mockportal/smokeTest/nested/index.jsp">
+    </head>
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo1Netui_Form_1" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=input&returnTo1_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.foo}" value=""/>
-                        <font color="red">not null, ok?
-</font>
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.bar}" value="&quot;foo&quot; is blank"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPage&returnTo1_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_1","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideInputs&returnTo1_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideForm&returnTo1_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPage&returnTo1_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_1","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideInputs&returnTo1_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideForm&returnTo1_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPage&returnTo1_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_1","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideInputs&returnTo1_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideForm&returnTo1_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=goNested&returnTo1_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=begin&returnTo1_submit=true">start over</a>          
+                    
+        <h3>Nested</h3>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=done&smokeTestA_submit=true">done</a>
+
+                
+    </body>
+</html>
 
-        </form>
-    </body></html>
-</td></tr>
+  </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo2</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>input</b></font><br>
-<font color="green">Action result URI: <b>/pageFlowCore/returnToTest/nextPage.jsp</b></font><br>
-<font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/nextPage.jsp</b></font><br>
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/results.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
-            Web Application Page
+            Mock Portal Smoke Test
         </title>
     </head>
     <body>
-        <p>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPreviousPage&returnTo2_submit=true">return-to previousPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPreviousPageOverrideForm&returnTo2_submit=true">return-to previousPage (override form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPreviousPageOverrideInputs&returnTo2_submit=true">return-to previousPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPreviousPage&returnTo2_submit=true">global-action return-to previousPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPreviousPageOverrideForm&returnTo2_submit=true">global-action return-to previousPage (override form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPreviousPageOverrideInputs&returnTo2_submit=true">global-action return-to previousPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPage&returnTo2_submit=true">return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPageOverrideForm&returnTo2_submit=true">return-to page (override form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPageOverrideInputs&returnTo2_submit=true">return-to page (override page inputs)</a>  
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=goNested&returnTo2_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=begin&returnTo2_submit=true">start over</a>
-        </p>
-    </body></html>
+        <h3>Mock Portal Smoke Test</h3>
+
+        data: <b><span>two</span></b>
+        <br/>
+        <br/>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=begin&smokeTestB_submit=true">go back</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
 
-</body>
-</html>]]></responseBody>
 
-    </response>
-
-    <testResults>
-      <testStatus>fail</testStatus>
-
-    </testResults>
-  </test>
-  <test>
-    <testNumber>4</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/MockPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-        <parameter>
-          <name>returnTo2_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>returnTo2altAction</name>
-          <value>goNested</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, application/x-shockwave-flash, */*</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip, deflate, x-gzip, compress, x-compress</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>Keep-Alive, TE</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </header>
-        <header>
-          <name>Cookie2</name>
-          <value>$Version="1"</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>TE</name>
-          <value>trailers, deflate, gzip, compress</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.failMode</name>
-          <value>stop</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testID</name>
-          <value>265121:f78dd78901:-7e33</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testNumber</name>
-          <value>4</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal (/mockportal)</title>
 </head>
@@ -1027,239 +789,154 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>6</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>smokeTestB_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestBaltAction</ses:name>
+                  <ses:value>begin</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=goNested&amp;smokeTestA_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.nested.NestedController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/nested/index.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
-        <title>return-to test</title>
-    </head>
 
+
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <base href="http://localhost:8080/coreWeb/mockportal/smokeTest/nested/index.jsp">
+    </head>
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo1Netui_Form_2" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=input&returnTo1_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.foo}" value=""/>
-                        <font color="red">not null, ok?
-</font>
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.bar}" value="&quot;foo&quot; is blank"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPage&returnTo1_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_2","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideInputs&returnTo1_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideForm&returnTo1_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPage&returnTo1_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_2","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideInputs&returnTo1_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideForm&returnTo1_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPage&returnTo1_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_2","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideInputs&returnTo1_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideForm&returnTo1_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=goNested&returnTo1_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=begin&returnTo1_submit=true">start over</a>          
+                    
+        <h3>Nested</h3>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=done&smokeTestA_submit=true">done</a>
+
+                
+    </body>
+</html>
 
-        </form>
-    </body></html>
-</td></tr>
+  </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo2</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>goNested</b></font><br>
-<font color="green">Action result URI: <b>/pageFlowCore/returnToTest/nested/index.jsp</b></font><br>
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>begin</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/index.jsp</b></font><br>
 <font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.nested.nestedController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/nested/index.jsp</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
-            Nested Flow
+            Mock Portal Smoke Test
         </title>
     </head>
     <body>
-        <h3> Nested Flow </h3>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPage&returnTo2_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideInputs&returnTo2_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideForm&returnTo2_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPreviousPage&returnTo2_submit=true">return-to previousPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPreviousPageOverrideForm&returnTo2_submit=true">return-to previousPage (override form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPreviousPageOverrideInputs&returnTo2_submit=true">return-to previousPage (override page inputs)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPage&returnTo2_submit=true">return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPageOverrideForm&returnTo2_submit=true">return-to page (override form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToPageOverrideInputs&returnTo2_submit=true">return-to page (override page inputs)</a>  
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestBNetui_Form_0" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=submit&smokeTestB_submit=true" method="post">
+            data: <input type="text" name="smokeTestB{pageFlow.data}" value="two">
+            <input type="submit" value="submit">
+        </form>
 
-    </body></html>
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=goNested&smokeTestB_submit=true">goNested</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
-
-</body>
-</html>]]></responseBody>
-
-    </response>
 
-    <testResults>
-      <testStatus>fail</testStatus>
 
-    </testResults>
-  </test>
-  <test>
-    <testNumber>5</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/MockPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-        <parameter>
-          <name>returnTo2_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>returnTo2altAction</name>
-          <value>returnToPreviousPage</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, application/x-shockwave-flash, */*</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip, deflate, x-gzip, compress, x-compress</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>Keep-Alive, TE</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1f0GgUba2TCUGh2m4xzvq4V1SrgNj52RxG7Nn7Csy23y51bAZ1rE!996633948</value>
-        </header>
-        <header>
-          <name>Cookie2</name>
-          <value>$Version="1"</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>TE</name>
-          <value>trailers, deflate, gzip, compress</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.failMode</name>
-          <value>stop</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testID</name>
-          <value>265121:f78dd78901:-7e33</value>
-        </header>
-        <header>
-          <name>testRecorder.playback.testNumber</name>
-          <value>5</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal (/mockportal)</title>
 </head>
@@ -1268,227 +945,173 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>7</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/MockPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>smokeTestA_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>smokeTestAaltAction</ses:name>
+                  <ses:value>done</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=A44DFC7979BAE6FEC4388B27184CC87B</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=begin&amp;smokeTestB_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestA</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="green">Action was: <b>done</b></font><br>
+<font color="green">Action result URI: <b>/mockportal/smokeTest/index.jsp</b></font><br>
+<font color="green">Action result isRedirect: <b>false</b></font><br>
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
 
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
-        <title>return-to test</title>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
+        <title>
+            Mock Portal Smoke Test
+        </title>
     </head>
-
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo1Netui_Form_3" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=input&returnTo1_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.foo}" value=""/>
-                        <font color="red">not null, ok?
-</font>
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo1{actionForm.bar}" value="&quot;foo&quot; is blank"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPage&returnTo1_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_3","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageWithForm&returnTo1_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideInputs&returnTo1_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=returnToCurrentPageOverrideForm&returnTo1_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPage&returnTo1_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_3","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageWithForm&returnTo1_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideInputs&returnTo1_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToCurrentPageOverrideForm&returnTo1_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPage&returnTo1_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true" onClick='anchor_submit_form("returnTo1Netui_Form_3","/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageWithForm&returnTo1_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideInputs&returnTo1_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=globalReturnToPageOverrideForm&returnTo1_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=goNested&returnTo1_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo1altAction=begin&returnTo1_submit=true">start over</a>          
-
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestANetui_Form_0" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=submit&smokeTestA_submit=true" method="post">
+            data: <input type="text" name="smokeTestA{pageFlow.data}" value="one">
+            <input type="submit" value="submit">
         </form>
-    </body></html>
+
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestAaltAction=goNested&smokeTestA_submit=true">goNested</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet returnTo2</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>returnToPreviousPage</b></font><br>
-<font color="green">Action result URI: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
-<font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>pageFlowCore.returnToTest.returnToTestController</b></font><br>
-<font color="black">Current URL: <b>/pageFlowCore/returnToTest/inputPage.jsp</b></font><br>
+<b>Portlet smokeTestB</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
+<font color="black">PageFlow/StrutsModule type: <b>mockportal.smokeTest.SmokeTestController</b></font><br>
+<font color="black">Current URL: <b>/mockportal/smokeTest/index.jsp</b></font><br>
 </td></tr>
 <tr><td>
-<!--Generated by WebLogic Workshop-->
-
-
-
-
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
-
-<script language="JavaScript" type="text/JavaScript">
-<!--
 
-// **** This section contains functions typically run as events ****
 
 
-// submit the form from an Anchor or ImageAnchor
-// Search for the form by actionName,
-// Replace the action with the passed in action
-// Submit the form
-function anchor_submit_form(netuiName, newAction)
-{
-  for (var i=0; i<document.forms.length; i++) {
-     if (document.forms[i].id == netuiName) {
-        document.forms[i].method = "POST";
-        document.forms[i].action = newAction;
-        document.forms[i].submit();
-     }
-   }
-}
--->
-</script>
 
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
 <head>
-        <title>return-to test</title>
+        <title>
+            Mock Portal Smoke Test
+        </title>
     </head>
-
     <body>
-        <h3>return-to test</h3>
-        <br/>
-        input1: <font color="blue">page input 1</font>
-        <br>
-        input2: <font color="blue">page input 2</font>
-        <br>
-        <br>
-        Leaving "foo" blank will make validation fail.
-        
-        <form name="inputForm" id="returnTo2Netui_Form_0" method="post" action="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=input&returnTo2_submit=true">
-            <table class="tablebody">
-                <tr class="tablebody">
-                    <td>foo:</td>
-                    <td>
-                        <input type="text" name="returnTo2{actionForm.foo}" value="init foo"/>
-                        
-                    </td>
-                </tr>
-                <tr class="tablebody">
-                    <td>bar:</td>
-                    <td>
-                        <input type="text" name="returnTo2{actionForm.bar}" value="init bar"/>
-                    </td>
-                </tr>
-            </table>
-            <br/>&nbsp;
-            <input type="submit" value="Submit"/>
-
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPage&returnTo2_submit=true">return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageWithForm&returnTo2_submit=true");return false;'>return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideInputs&returnTo2_submit=true">return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=returnToCurrentPageOverrideForm&returnTo2_submit=true">return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPage&returnTo2_submit=true">global-action return-to currentPage</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageWithForm&returnTo2_submit=true");return false;'>global-action return-to currentPage (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageOverrideInputs&returnTo2_submit=true">global-action return-to currentPage (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToCurrentPageOverrideForm&returnTo2_submit=true">global-action return-to currentPage (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPage&returnTo2_submit=true">global-action return-to page</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageWithForm&returnTo2_submit=true" onClick='anchor_submit_form("returnTo2Netui_Form_0","/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageWithForm&returnTo2_submit=true");return false;'>global-action return-to page (keep form)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageOverrideInputs&returnTo2_submit=true">global-action return-to page (override page inputs)</a>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=globalReturnToPageOverrideForm&returnTo2_submit=true">global-action return-to page (override form)</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=goNested&returnTo2_submit=true">go to nested page flow</a>          
-            <br>
-            <br>
-            <a href="/coreWeb/pageFlowCore/returnToTest/returnToAction/returnToActionController.jpf">test returnTo="previousAction" and returnTo="action"</a>
-            <br>
-            <br>
-            <a href="/coreWeb/mockportal/MockPortal.jsp?returnTo2altAction=begin&returnTo2_submit=true">start over</a>          
-
+        <h3>Mock Portal Smoke Test</h3>
+        
+        <form id="smokeTestBNetui_Form_1" action="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=submit&smokeTestB_submit=true" method="post">
+            data: <input type="text" name="smokeTestB{pageFlow.data}" value="two">
+            <input type="submit" value="submit">
         </form>
-    </body></html>
+
+        <a href="/coreWeb/mockportal/MockPortal.jsp?smokeTestBaltAction=goNested&smokeTestB_submit=true">goNested</a>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
-
-</body>
-</html>]]></responseBody>
 
-    </response>
 
-    <testResults>
-      <testStatus>fail</testStatus>
+<html>
+<head>
+<title>Mock Portal (/mockportal)</title>
+</head>
 
-    </testResults>
-  </test>
+<h3>Mock Portal (/mockportal)</h3>
+<body>
 
-  </tests>
+    
+        
+        
+    
 
-  <endDate>10 Sep 2003, 05:35:35.550 PM MDT</endDate>
-  <sessionStatus>fail</sessionStatus>
-  <testCount>5</testCount>
-  <passedCount>0</passedCount>
-  <failedCount>5</failedCount>
-</recorderSession>
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+   </ses:tests>
+   <ses:endDate>16 Sep 2004, 10:33:55.130 PM MDT</ses:endDate>
+   <ses:testCount>7</ses:testCount>
+</ses:recorderSession>

Modified: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortalListenTo.xml
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortalListenTo.xml	(original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/MockPortalListenTo.xml	Thu Sep 16 22:20:32 2004
@@ -1,89 +1,69 @@
 <?xml version="1.0" encoding="UTF-8"?>
-
-<recorderSession xmlns="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
-
-  <sessionName>MockPortalListenTo</sessionName>
-  <tester>rich</tester>
-  <startDate>22 Aug 2003, 03:03:24.479 PM GMT-07:00</startDate>
-  <description>Tests 'listenTo' and exception handling under portal.</description>
-
-  <tests>
-  <test>
-    <testNumber>1</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1</value>
-        </header>
-        <header>
-          <name>Accept-Charset</name>
-          <value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip,deflate</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us,en;q=0.5</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>keep-alive</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>Keep-Alive</name>
-          <value>300</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
-<head>
-<title>Mock Portal - listenTo</title>
-</head>
-
-<h3>Mock Portal - listenTo</h3>
-<body>
-
-    
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+   <ses:sessionName>MockPortalListenTo</ses:sessionName>
+   <ses:tester>rich</ses:tester>
+   <ses:startDate>16 Sep 2004, 10:36:55.149 PM MDT</ses:startDate>
+   <ses:description>Tests 'listenTo' and exception handling under our simulated portal.</ses:description>
+   <ses:tests>
+      <ses:test>
+         <ses:testNumber>1</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet a1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>begin</b></font><br>
@@ -98,7 +78,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             A
         </title>
@@ -108,11 +91,11 @@
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&a1_submit=true">bothHave</a>
         <br>
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=onlyA&a1_submit=true">onlyA</a>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet b1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>begin</b></font><br>
@@ -127,7 +110,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             B
         </title>
@@ -136,96 +122,14 @@
         <h3>B</h3>
         
         <font color="blue"><span></span></font>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
 
-</body>
-</html>]]></responseBody>
 
-    </response>
-  </test>
-  <test>
-    <testNumber>2</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-        <parameter>
-          <name>a1_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>a1altAction</name>
-          <value>bothHave</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1</value>
-        </header>
-        <header>
-          <name>Accept-Charset</name>
-          <value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip,deflate</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us,en;q=0.5</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>keep-alive</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>Keep-Alive</name>
-          <value>300</value>
-        </header>
-        <header>
-          <name>Referer</name>
-          <value>http://localhost:7001/coreWeb/mockportal/listenTo/ListenToPortal.jsp</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal - listenTo</title>
 </head>
@@ -234,7 +138,86 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>2</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>a1_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>a1altAction</ses:name>
+                  <ses:value>bothHave</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/listenTo/ListenToPortal.jsp</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet a1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>bothHave</b></font><br>
@@ -249,7 +232,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             A
         </title>
@@ -259,11 +245,11 @@
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&a1_submit=true">bothHave</a>
         <br>
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=onlyA&a1_submit=true">onlyA</a>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet b1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>bothHave</b></font><br>
@@ -278,7 +264,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             handled bothHave
         </title>
@@ -289,96 +278,14 @@
         <font color="blue"><span></span></font>
         <br>
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?b1altAction=begin&b1_submit=true">start over</a>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
 
-</body>
-</html>]]></responseBody>
 
-    </response>
-  </test>
-  <test>
-    <testNumber>3</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-        <parameter>
-          <name>b1_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>b1altAction</name>
-          <value>begin</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1</value>
-        </header>
-        <header>
-          <name>Accept-Charset</name>
-          <value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip,deflate</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us,en;q=0.5</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>keep-alive</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>Keep-Alive</name>
-          <value>300</value>
-        </header>
-        <header>
-          <name>Referer</name>
-          <value>http://localhost:7001/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&amp;a1_submit=true</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal - listenTo</title>
 </head>
@@ -387,7 +294,86 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>3</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>b1_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>b1altAction</ses:name>
+                  <ses:value>begin</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&amp;a1_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet a1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="black">PageFlow/StrutsModule type: <b>mockportal.listenTo.listenToA.aController</b></font><br>
@@ -399,7 +385,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             A
         </title>
@@ -409,11 +398,11 @@
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&a1_submit=true">bothHave</a>
         <br>
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=onlyA&a1_submit=true">onlyA</a>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet b1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>begin</b></font><br>
@@ -428,7 +417,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             B
         </title>
@@ -437,96 +429,14 @@
         <h3>B</h3>
         
         <font color="blue"><span></span></font>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
 
-</body>
-</html>]]></responseBody>
 
-    </response>
-  </test>
-  <test>
-    <testNumber>4</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-        <parameter>
-          <name>a1_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>a1altAction</name>
-          <value>onlyA</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1</value>
-        </header>
-        <header>
-          <name>Accept-Charset</name>
-          <value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip,deflate</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us,en;q=0.5</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>keep-alive</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>Keep-Alive</name>
-          <value>300</value>
-        </header>
-        <header>
-          <name>Referer</name>
-          <value>http://localhost:7001/coreWeb/mockportal/listenTo/ListenToPortal.jsp?b1altAction=begin&amp;b1_submit=true</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal - listenTo</title>
 </head>
@@ -535,7 +445,86 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+        
+        
+    
+
+</body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>4</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>a1_submit</ses:name>
+                  <ses:value>true</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>a1altAction</ses:name>
+                  <ses:value>onlyA</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
+                  <ses:name>accept</ses:name>
+                  <ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-charset</ses:name>
+                  <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-encoding</ses:name>
+                  <ses:value>gzip,deflate</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>accept-language</ses:name>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cookie</ses:name>
+                  <ses:value>JSESSIONID=E1225DB3C0C6EC5C9D2857F252AF86BA</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/mockportal/listenTo/ListenToPortal.jsp?b1altAction=begin&amp;b1_submit=true</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>user-agent</ses:name>
+                  <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet a1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>onlyA</b></font><br>
@@ -550,7 +539,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             A
         </title>
@@ -560,11 +552,11 @@
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&a1_submit=true">bothHave</a>
         <br>
         <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=onlyA&a1_submit=true">onlyA</a>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
+<table border="1" cellspacing="1" cellpadding="5" width="100%">
 <tr bordercolor="White"><td bgcolor="#EEEEFF">
 <b>Portlet b1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
 <font color="green">Action was: <b>onlyA</b></font><br>
@@ -579,7 +571,10 @@
 
 
 
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
+<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+<head>
         <title>
             B
         </title>
@@ -588,96 +583,14 @@
         <h3>B</h3>
         
         <font color="blue"><span>Note: doing nothing for action /onlyA.</span></font>
-    </body></html>
+    </body>
+</html>
 </td></tr>
 </table><br><br>
 
-    
 
-</body>
-</html>]]></responseBody>
 
-    </response>
-  </test>
-  <test>
-    <testNumber>5</testNumber>
-
-    <request>
-
-      <protocol>HTTP</protocol>
-      <protocolVersion>1.1</protocolVersion>
-      <host>localhost</host>
-      <port>7001</port>
-      <uri>/coreWeb/mockportal/listenTo/ListenToPortal.jsp</uri>
-      <method>GET</method>
-
-      <parameters>
-        <parameter>
-          <name>a1_submit</name>
-          <value>true</value>
-        </parameter>
-        <parameter>
-          <name>a1altAction</name>
-          <value>onlyA</value>
-        </parameter>
-      </parameters>
-
-      <cookies>
-        <cookie>
-          <name>JSESSIONID</name>
-          <value>1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </cookie>
-      </cookies>
-
-      <headers>
-        <header>
-          <name>Accept</name>
-          <value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1</value>
-        </header>
-        <header>
-          <name>Accept-Charset</name>
-          <value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</value>
-        </header>
-        <header>
-          <name>Accept-Encoding</name>
-          <value>gzip,deflate</value>
-        </header>
-        <header>
-          <name>Accept-Language</name>
-          <value>en-us,en;q=0.5</value>
-        </header>
-        <header>
-          <name>Connection</name>
-          <value>keep-alive</value>
-        </header>
-        <header>
-          <name>Cookie</name>
-          <value>JSESSIONID=1GSFAb3104OusJUh7VrpN2rPAod8k0202GCC7WBE88H5nlDybBED!1757504539</value>
-        </header>
-        <header>
-          <name>Host</name>
-          <value>localhost:7001</value>
-        </header>
-        <header>
-          <name>Keep-Alive</name>
-          <value>300</value>
-        </header>
-        <header>
-          <name>Referer</name>
-          <value>http://localhost:7001/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=onlyA&amp;a1_submit=true</value>
-        </header>
-        <header>
-          <name>User-Agent</name>
-          <value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.4) Gecko/20030624</value>
-        </header>
-      </headers>
-
-    </request>
-
-    <response>
-      <statusCode>200</statusCode>
-      <reason></reason>
-      <responseBody><![CDATA[<html>
+<html>
 <head>
 <title>Mock Portal - listenTo</title>
 </head>
@@ -686,74 +599,15 @@
 <body>
 
     
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
-<tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet a1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>onlyA</b></font><br>
-<font color="green">Action result URI: <b>/mockportal/listenTo/listenToA/index.jsp</b></font><br>
-<font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>mockportal.listenTo.listenToA.aController</b></font><br>
-<font color="black">Current URL: <b>/mockportal/listenTo/listenToA/index.jsp</b></font><br>
-</td></tr>
-<tr><td>
-<!--Generated by WebLogic Workshop-->
-
-
-
-
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
-        <title>
-            A
-        </title>
-    </head>
-    <body>
-        <h3>A</h3>
-        <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=bothHave&a1_submit=true">bothHave</a>
-        <br>
-        <a href="/coreWeb/mockportal/listenTo/ListenToPortal.jsp?a1altAction=onlyA&a1_submit=true">onlyA</a>
-    </body></html>
-</td></tr>
-</table><br><br>
-
-        <table border="1" cellspacing="1" cellpadding="5" width="100%">
-<tr bordercolor="White"><td bgcolor="#EEEEFF">
-<b>Portlet b1</b></td></tr><tr bordercolor="White"><td bgcolor="#EEEEFF">
-<font color="green">Action was: <b>onlyA</b></font><br>
-<font color="green">Action result URI: <b>/mockportal/listenTo/listenToB/index.jsp</b></font><br>
-<font color="green">Action result isRedirect: <b>false</b></font><br>
-<font color="black">PageFlow/StrutsModule type: <b>mockportal.listenTo.listenToB.bController</b></font><br>
-<font color="black">Current URL: <b>/mockportal/listenTo/listenToB/index.jsp</b></font><br>
-</td></tr>
-<tr><td>
-<!--Generated by WebLogic Workshop-->
-
-
-
-
-<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>
-        <title>
-            B
-        </title>
-    </head>
-    <body>
-        <h3>B</h3>
         
-        <font color="blue"><span>Note: doing nothing for action /onlyA.</span></font>
-    </body></html>
-</td></tr>
-</table><br><br>
-
+        
     
 
 </body>
-</html>]]></responseBody>
-
-    </response>
-  </test>
-
-  </tests>
-
-  <endDate>22 Aug 2003, 03:04:59.265 PM GMT-07:00</endDate>
-  <testCount>5</testCount>
-
-</recorderSession>
\ No newline at end of file
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+   </ses:tests>
+   <ses:endDate>16 Sep 2004, 10:37:32.713 PM MDT</ses:endDate>
+   <ses:testCount>4</ses:testCount>
+</ses:recorderSession>

Mime
View raw message