You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ri...@apache.org on 2004/09/13 05:22:57 UTC

svn commit: rev 45946 - in incubator/beehive/trunk/netui: src/pageflow/org/apache/beehive/netui/pageflow src/pageflow/org/apache/beehive/netui/pageflow/faces src/pageflow/org/apache/beehive/netui/pageflow/faces/internal src/pageflow/org/apache/beehive/netui/pageflow/internal src/pageflow/org/apache/beehive/netui/script/common src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput src/webapp-template/dd/generic test/webapps/jsf/jsfWeb/WEB-INF test/webapps/jsf/jsfWeb/bindingInFaces test/webapps/jsf/testRecorder/config test/webapps/jsf/testRecorder/tests

Author: rich
Date: Sun Sep 12 20:22:56 2004
New Revision: 45946

Added:
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/BackingClassMethodBinding.java
      - copied, changed from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/BackingClassMethodBinding.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowApplication.java
      - copied, changed from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplication.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowNavigationHandler.java
      - copied, changed from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowNavigationHandler.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java
      - copied, changed from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowViewHandler.java
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/BindingInFacesController.jpf   (contents, props changed)
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/SharedFlow.jpfs   (contents, props changed)
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/page1.jsfb   (contents, props changed)
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/page1.jsp   (contents, props changed)
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/results.jsp   (contents, props changed)
   incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml   (contents, props changed)
Removed:
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/BackingClassMethodBinding.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/BackingClassVariableResolver.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplication.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowNavigationHandler.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowViewHandler.java
Modified:
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBean.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBeanFactory.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowJspFilter.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowUtils.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplicationFactory.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalConstants.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java
   incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ScriptablePageInput.java
   incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java
   incubator/beehive/trunk/netui/src/webapp-template/dd/generic/web.xml
   incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/WEB-INF/web.xml
   incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml
   incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/JpfFaces.xml
Log:
- Fixed to enable the pageInput, pageFlow and sharedFlow binding contexts for JSF pages.  Page inputs sent to a JSF page are now stored across postbacks to that page.
- Changed the default web.xml to run PageFlowJspFilter before *.faces.  This is required in order to ensure that the appropriate page flow is initialized before hitting a .faces URI directly.  The filter is also where implicit objects for databinding get set up.

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



Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBean.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBean.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBean.java	Sun Sep 12 20:22:56 2004
@@ -24,10 +24,15 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.ServletContext;
+import javax.faces.context.FacesContext;
+import java.util.Map;
+import java.util.Collections;
 
-public class FacesBackingBean
+public abstract class FacesBackingBean
         extends PageFlowManagedObject
 {
+    private Map _pageInputs;
+    
     void persistInSession( HttpServletRequest request, HttpServletResponse response, ServletContext servletContext )
     {
         HttpServletRequest unwrappedRequest = PageFlowUtils.unwrapMultipart( request );
@@ -45,5 +50,34 @@
     public String getDisplayName()
     {
         return getClass().getName();
+    }
+
+    public void reinitialize( HttpServletRequest request, HttpServletResponse response, ServletContext servletContext )
+    {
+        if ( _pageInputs == null )
+        {
+            Map map = InternalUtils.getActionOutputMap( request, false );
+            if ( map != null ) _pageInputs = Collections.unmodifiableMap( map );
+        }
+        
+        super.reinitialize( request, response, servletContext );
+    }
+
+    protected Object getPageInput( String pageInputName )
+    {
+        return _pageInputs != null ? _pageInputs.get( pageInputName ) : null;
+    }
+    
+    private static HttpServletRequest getRequest( FacesContext context )
+    {
+        Object request = context.getExternalContext().getRequest();
+        assert request != null;
+        assert request instanceof HttpServletRequest : request.getClass().getName();
+        return ( HttpServletRequest ) request;
+    }
+    
+    public Map getPageInputMap()
+    {
+        return _pageInputs;
     }
 }

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBeanFactory.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBeanFactory.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/FacesBackingBeanFactory.java	Sun Sep 12 20:22:56 2004
@@ -20,6 +20,7 @@
 import static org.apache.beehive.netui.pageflow.internal.InternalConstants.FACES_BACKING_ATTR;
 import org.apache.beehive.netui.pageflow.internal.InternalUtils;
 import org.apache.beehive.netui.pageflow.internal.ContextCache;
+import org.apache.beehive.netui.pageflow.internal.InternalConstants;
 import org.apache.beehive.netui.pageflow.annotations.Jpf;
 import org.apache.beehive.netui.pageflow.scoping.ScopedServletUtils;
 import org.apache.beehive.netui.util.FileUtils;
@@ -29,6 +30,9 @@
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.ServletContext;
 
+import static org.apache.beehive.netui.pageflow.internal.InternalConstants.*;
+
+
 class FacesBackingBeanFactory
 {
     private static final Logger _log = Logger.getInstance( FacesBackingBeanFactory.class );
@@ -38,20 +42,24 @@
                                                                   HttpServletResponse response, 
                                                                   ServletContext servletContext )
     {
-        String relativeURI = PageFlowUtils.getRelativeURI( request, InternalUtils.decodeURI( request ), null );
-        assert relativeURI.startsWith( "/" ) : relativeURI;
-        String backingClassName = FileUtils.stripFileExtension( relativeURI.substring( 1 ).replace( '/', '.' ) );
+        String uri = PageFlowUtils.getRelativeURI( request, InternalUtils.decodeURI( request ), null );
+        assert uri.startsWith( "/" ) : uri;
+        String backingClassName = FileUtils.stripFileExtension( uri.substring( 1 ).replace( '/', '.' ) );
         FacesBackingBean currentBean = InternalUtils.getFacesBackingBean( request );
         
+        //
+        // If there is no current backing bean, or if the current one doesn't match the desired classname, create one.
+        //
         if ( currentBean == null || ! currentBean.getClass().getName().equals( backingClassName ) )
         {
+            FacesBackingBean bean = null;
+            
             try
             {
                 Class backingClass =
                     ContextCache.get( servletContext ).getReloadableClassHandler().loadCachedClass( backingClassName,
                                                                                                     request );
                 
-                
                 if ( backingClass == null )
                 {
                     if ( _log.isTraceEnabled() )
@@ -68,10 +76,7 @@
                                     + request.getRequestURI() + "; creating a new instance." );
                     }
                     
-                    FacesBackingBean bean = ( FacesBackingBean ) backingClass.newInstance();
-                    bean.create( request, response, servletContext );
-                    bean.persistInSession( request, response, servletContext );
-                    return bean;
+                    bean = ( FacesBackingBean ) backingClass.newInstance();
                 }
                 else
                 {
@@ -91,11 +96,39 @@
             {
                 _log.error( "Could not create backing bean instance of " + backingClassName, e );
             }
-            catch ( Exception e )
+            
+            //
+            // If we didn't create (or failed to create) a backing bean, and if this is a JSF request, then create
+            // a default one.  This ensures that there will be a place for things like page inputs, that get stored
+            // in the backing bean across postbacks to the same JSF.
+            //
+            if ( bean == null && 
+                 ( FileUtils.uriEndsWith( uri, FACES_EXTENSION ) || FileUtils.uriEndsWith( uri, JSF_EXTENSION ) ) )
             {
-                _log.error( "Error while creating backing bean instance of " + backingClassName, e );
+                bean = new DefaultFacesBackingBean();
             }
             
+            //
+            // If we created a backing bean, invoke its create callback, and tell it to store itself in the session.
+            //
+            if ( bean != null )
+            {
+                try
+                {
+                    bean.create( request, response, servletContext );
+                }
+                catch ( Exception e )
+                {
+                    _log.error( "Error while creating backing bean instance of " + backingClassName, e );
+                }
+                
+                bean.persistInSession( request, response, servletContext );
+                return bean;
+            }
+            
+            //
+            // We didn't create a backing bean.  If there's one in the session (an inappropriate one), remove it.
+            //
             HttpServletRequest unwrappedRequest = PageFlowUtils.unwrapMultipart( request );
             ScopedServletUtils.removeScopedSessionAttr( FACES_BACKING_ATTR, unwrappedRequest );
             request.getSession().removeAttribute( FACES_BACKING_ATTR );
@@ -112,5 +145,10 @@
         }
         
         return currentBean;
+    }
+    
+    private static class DefaultFacesBackingBean
+        extends FacesBackingBean
+    {
     }
 }

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowJspFilter.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowJspFilter.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowJspFilter.java	Sun Sep 12 20:22:56 2004
@@ -27,6 +27,8 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import java.io.IOException;
+import java.util.Set;
+import java.util.HashSet;
 
 import org.apache.struts.util.RequestUtils;
 import org.apache.struts.action.ActionServlet;
@@ -39,6 +41,7 @@
 import org.apache.beehive.netui.util.ServletUtils;
 import org.apache.beehive.netui.pageflow.internal.JavaControlUtils;
 import org.apache.beehive.netui.pageflow.internal.InternalUtils;
+import org.apache.beehive.netui.pageflow.internal.InternalConstants;
 
 /**
  * Servlet filter to ensure that KNEX gets a chance to compile/redeploy if necessary, and
@@ -52,9 +55,17 @@
     
     private static final Logger _log = Logger.getInstance( PageFlowJspFilter.class );
     
-    private static final String JSP_EXT = ".jsp";
+    private static Set< String > VALID_FILE_EXTENSIONS = new HashSet< String >();
     private static final String PREVENT_CACHE_ATTR = PageFlowJspFilter.class.getName() + "_preventCache";
     
+    static
+    {
+        VALID_FILE_EXTENSIONS.add( "jsp" );
+        VALID_FILE_EXTENSIONS.add( "jspx" );
+        VALID_FILE_EXTENSIONS.add( InternalConstants.FACES_EXTENSION );
+        VALID_FILE_EXTENSIONS.add( InternalConstants.JSF_EXTENSION );
+    }
+    
     
     public void init( FilterConfig filterConfig ) throws ServletException
     {
@@ -86,12 +97,13 @@
             }
             
             String requestURI = httpRequest.getRequestURI();
+            String extension = FileUtils.getFileExtension( requestURI );
             
-            if ( ! FileUtils.osSensitiveEndsWith( requestURI, JSP_EXT ) )
+            if ( ! VALID_FILE_EXTENSIONS.contains( extension ) )
             {
                 if ( _log.isDebugEnabled() )
                 {
-                    _log.debug( "Request " + requestURI + " is not a JSP.  Skipping filter." );
+                    _log.debug( "Request " + requestURI + " is not an appropriate URI.  Skipping filter." );
                 }
 
                 chain.doFilter( request, response );        

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowUtils.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowUtils.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowUtils.java	Sun Sep 12 20:22:56 2004
@@ -723,7 +723,7 @@
     public static Object getActionOutput( String name, ServletRequest request )
     {
         Map map = InternalUtils.getActionOutputMap( request, false );
-        return ( map != null ? map.get( name ) : null );
+        return map != null ? map.get( name ) : null;
     }
     
     /**

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplicationFactory.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplicationFactory.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplicationFactory.java	Sun Sep 12 20:22:56 2004
@@ -18,6 +18,7 @@
 package org.apache.beehive.netui.pageflow.faces;
 
 import org.apache.beehive.netui.util.logging.Logger;
+import org.apache.beehive.netui.pageflow.faces.internal.PageFlowApplication;
 
 import javax.faces.application.ApplicationFactory;
 import javax.faces.application.Application;

Copied: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/BackingClassMethodBinding.java (from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/BackingClassMethodBinding.java)
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/BackingClassMethodBinding.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/BackingClassMethodBinding.java	Sun Sep 12 20:22:56 2004
@@ -15,7 +15,7 @@
  *
  * $Header:$
  */
-package org.apache.beehive.netui.pageflow.faces;
+package org.apache.beehive.netui.pageflow.faces.internal;
 
 import org.apache.beehive.netui.pageflow.internal.InternalUtils;
 import org.apache.beehive.netui.pageflow.annotations.Jpf;

Copied: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowApplication.java (from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplication.java)
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowApplication.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowApplication.java	Sun Sep 12 20:22:56 2004
@@ -15,7 +15,7 @@
  *
  * $Header:$
  */
-package org.apache.beehive.netui.pageflow.faces;
+package org.apache.beehive.netui.pageflow.faces.internal;
 
 import org.apache.beehive.netui.pageflow.internal.InternalConstants;
 import org.apache.beehive.netui.util.logging.Logger;
@@ -127,7 +127,7 @@
 
     public void setVariableResolver( VariableResolver resolver )
     {
-        _delegate.setVariableResolver( new BackingClassVariableResolver( resolver ) );
+        _delegate.setVariableResolver( resolver );
     }
 
     public ViewHandler getViewHandler()
@@ -207,7 +207,7 @@
     {
         MethodBinding mb = _delegate.createMethodBinding( ref, params );
         
-        if ( ref.startsWith( BACKING_BINDING_START ) && ref.endsWith( "}" ) )
+        if ( ref.startsWith( BACKING_BINDING_START ) && ref.charAt( ref.length() - 1 ) == '}' )
         {
             String methodName = ref.substring( BACKING_BINDING_START.length(), ref.length() - 1 );
             return new BackingClassMethodBinding( methodName, params, mb );

Copied: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowNavigationHandler.java (from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowNavigationHandler.java)
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowNavigationHandler.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowNavigationHandler.java	Sun Sep 12 20:22:56 2004
@@ -1,9 +1,24 @@
-package org.apache.beehive.netui.pageflow.faces;
+/*
+* Copyright 2004 The Apache Software Foundation.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+* 
+*     http://www.apache.org/licenses/LICENSE-2.0
+* 
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*
+* $Header:$
+*/
+package org.apache.beehive.netui.pageflow.faces.internal;
 
 import javax.faces.application.NavigationHandler;
-import javax.faces.application.ApplicationFactory;
 import javax.faces.context.FacesContext;
-import javax.faces.FactoryFinder;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.ServletContext;

Copied: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java (from rev 37341, incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowViewHandler.java)
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/PageFlowViewHandler.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java	Sun Sep 12 20:22:56 2004
@@ -15,7 +15,7 @@
  *
  * $Header:$
  */
-package org.apache.beehive.netui.pageflow.faces;
+package org.apache.beehive.netui.pageflow.faces.internal;
 
 import javax.faces.application.ViewHandler;
 import javax.faces.context.FacesContext;

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalConstants.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalConstants.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalConstants.java	Sun Sep 12 20:22:56 2004
@@ -28,9 +28,17 @@
     
     public static final String FACES_BACKING_ATTR = InternalUtils.class.getName() + "_facesBacking";
     public static final String BACKING_CLASS_IMPLICIT_OBJECT = "backing";
+    public static final String PAGE_FLOW_IMPLICIT_OBJECT = "pageFlow";
+    public static final String SHARED_FLOW_IMPLICIT_OBJECT = "sharedFlow";
+    public static final String PAGE_INPUT_IMPLICIT_OBJECT = "pageInput";
     
     public static final String SHARED_FLOW_MODULE_PREFIX = "/-";
     public static final String SHARED_FLOW_ROOT_MODULE = "/-webappRoot";
     
     public static final String ATTR_PREFIX = "_netui:";
+    
+    public static final String FACES_EXTENSION = "faces";
+    public static final String JSF_EXTENSION = "jsf";
+    public static final String FACES_EXTENSION_DOT = '.' + FACES_EXTENSION;
+    public static final String JSF_EXTENSION_DOT = '.' + JSF_EXTENSION;
 }

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java	Sun Sep 12 20:22:56 2004
@@ -17,7 +17,6 @@
  */
 package org.apache.beehive.netui.pageflow.internal;
 
-import org.apache.beehive.netui.pageflow.annotations.Jpf;
 import org.apache.beehive.netui.pageflow.*;
 import org.apache.beehive.netui.pageflow.handler.ReloadableClassHandler;
 import org.apache.beehive.netui.pageflow.config.PageFlowControllerConfig;
@@ -25,7 +24,6 @@
 import org.apache.beehive.netui.util.logging.Logger;
 import org.apache.beehive.netui.util.Bundle;
 import org.apache.beehive.netui.util.ServletUtils;
-import org.apache.beehive.netui.util.FileUtils;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -485,7 +483,7 @@
     public static String getActionName( ActionMapping mapping )
     {
         String actionName = mapping.getPath();
-        return ( actionName.charAt( 0 ) == '/' ? actionName.substring( 1 ) : actionName );
+        return actionName.charAt( 0 ) == '/' ? actionName.substring( 1 ) : actionName;
     }
         
         
@@ -502,10 +500,6 @@
         return handler.loadClass( className, request );
     }
     
-    /**
-     * Provided as public for access from databinding tag classes.
-     * @exclude
-     */
     public static Map getActionOutputMap( ServletRequest request, boolean createIfNotExist )
     {
         Map map = ( Map ) request.getAttribute( ACTIONOUTPUT_MAP_ATTR );
@@ -519,6 +513,14 @@
         return map;
     }
     
+    public static Map getPageInputMap( ServletRequest request )
+    {
+        Map actionOutputsFromPageFlow = getActionOutputMap( request, false );
+        if ( actionOutputsFromPageFlow != null ) return actionOutputsFromPageFlow;
+        FacesBackingBean fbb = getFacesBackingBean( request );
+        return fbb != null ? fbb.getPageInputMap() : null;
+    }
+    
     /**
      * Get the Struts ModuleConfig associated with the SharedFlowController for the given FlowController module.
      */ 
@@ -982,9 +984,14 @@
     }
     
 
-    public static FacesBackingBean getFacesBackingBean( HttpServletRequest request )
+    public static FacesBackingBean getFacesBackingBean( ServletRequest request )
     {
-        HttpSession session = request.getSession( false );
-        return session != null ? ( FacesBackingBean ) session.getAttribute( FACES_BACKING_ATTR ) : null;
+        if ( request instanceof HttpServletRequest )
+        {
+            HttpSession session = ( ( HttpServletRequest ) request ).getSession( false );
+            return session != null ? ( FacesBackingBean ) session.getAttribute( FACES_BACKING_ATTR ) : null;
+        }
+        
+        return null;
     }
 }

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java	Sun Sep 12 20:22:56 2004
@@ -82,7 +82,7 @@
         request.setAttribute(PAGE_FLOW_IMPLICIT_OBJECT_KEY, pageFlow);
         if(fbb != null)
             request.setAttribute(BACKING_IMPLICIT_OBJECT_KEY, fbb);
-        request.setAttribute(PAGE_INPUT_IMPLICIT_OBJECT_KEY, InternalUtils.getActionOutputMap(request, false));
+        request.setAttribute(PAGE_INPUT_IMPLICIT_OBJECT_KEY, InternalUtils.getPageInputMap(request));
     }
 
     public static final void loadSharedFlow(ServletRequest request, SharedFlowController sharedFlow)

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ScriptablePageInput.java
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ScriptablePageInput.java	(original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ScriptablePageInput.java	Sun Sep 12 20:22:56 2004
@@ -76,7 +76,7 @@
     {
         if(_entrySet == null)
         {
-            Map piMap = InternalUtils.getActionOutputMap(_request, false);
+            Map piMap = InternalUtils.getPageInputMap(_request);
             ArrayList list = new ArrayList();
             if(piMap != null)
             {
@@ -104,7 +104,7 @@
     
     public boolean containsKey(Object key)
     {
-        Map piMap = InternalUtils.getActionOutputMap(_request, false);
+        Map piMap = InternalUtils.getPageInputMap(_request);
         return (piMap != null ? piMap.containsKey(key) : false);
     }
 }

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java	(original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java	Sun Sep 12 20:22:56 2004
@@ -275,7 +275,7 @@
             registerTagError(msg,null);
         }
 
-        Map actionOutputMap = InternalUtils.getActionOutputMap(pageContext.getRequest(), false);
+        Map actionOutputMap = InternalUtils.getPageInputMap(pageContext.getRequest());
         if(_required && (actionOutputMap == null || !actionOutputMap.containsKey(_name)))
         {
             String msg = Bundle.getErrorString("Tags_DeclarePageInput_Required", new Object[] {_name});

Modified: incubator/beehive/trunk/netui/src/webapp-template/dd/generic/web.xml
==============================================================================
--- incubator/beehive/trunk/netui/src/webapp-template/dd/generic/web.xml	(original)
+++ incubator/beehive/trunk/netui/src/webapp-template/dd/generic/web.xml	Sun Sep 12 20:22:56 2004
@@ -15,6 +15,9 @@
     <filter-mapping>
         <filter-name>PageFlowJspFilter</filter-name>
         <url-pattern>*.jsp</url-pattern>
+        <url-pattern>*.jspx</url-pattern>
+        <url-pattern>*.faces</url-pattern>
+        <url-pattern>*.jsf</url-pattern>
         <dispatcher>FORWARD</dispatcher>
         <dispatcher>REQUEST</dispatcher>
         <dispatcher>INCLUDE</dispatcher>

Modified: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/WEB-INF/web.xml
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/WEB-INF/web.xml	(original)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/WEB-INF/web.xml	Sun Sep 12 20:22:56 2004
@@ -11,10 +11,12 @@
        <param-value>true</param-value>
     </context-param>
 
+<!--
     <context-param>
         <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
         <param-value>client</param-value>
     </context-param>
+-->
 
     <context-param>
         <param-name>com.sun.faces.validateXml</param-name>
@@ -60,9 +62,12 @@
   </filter-mapping>
 
   <filter-mapping>
-    <filter-name>PageFlowJspFilter</filter-name>
-    <url-pattern>*.jsp</url-pattern>
-    <dispatcher>FORWARD</dispatcher>
+      <filter-name>PageFlowJspFilter</filter-name>
+      <url-pattern>*.jsp</url-pattern>
+      <url-pattern>*.faces</url-pattern>
+      <dispatcher>FORWARD</dispatcher>
+      <dispatcher>REQUEST</dispatcher>
+      <dispatcher>INCLUDE</dispatcher>
   </filter-mapping>
 
   <listener>

Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/BindingInFacesController.jpf
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/BindingInFacesController.jpf	Sun Sep 12 20:22:56 2004
@@ -0,0 +1,61 @@
+package bindingInFaces;
+
+import javax.servlet.http.HttpSession;
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+/**
+ * This is the default controller for a blank web application.
+ */
+@Jpf.Controller
+public class BindingInFacesController extends PageFlowController
+{
+    private String _someProperty = "page flow property";
+
+    public String getSomeProperty()
+    {
+        return _someProperty;
+    }
+
+    public void setSomeProperty( String someProperty )
+    {
+        _someProperty = someProperty;
+    }
+
+    @Jpf.Action(forwards = {
+        @Jpf.Forward(name = "success",
+                     path = "page1.faces")
+        }
+    )
+    protected Forward begin()
+    {
+        return new Forward( "success", "somePageInput", "a page input" );
+    }
+
+    @Jpf.Action(forwards = {
+        @Jpf.Forward(name = "success",
+                     path = "results.jsp")
+        }
+    )
+    protected Forward submit()
+    {
+        return new Forward("success");
+    }
+
+}
+
+@Jpf.ViewProperties(value = {
+    "<!-- This data is auto-generated. Hand-editing this section is not recommended. -->",
+    "<view-properties>",
+    "<pageflow-object id='pageflow:/bindingInFaces/BindingInFacesController.jpf'/>",
+    "<pageflow-object id='action:begin.do'><property value='80' name='x'/><property value='100' name='y'/></pageflow-object>",
+    "<pageflow-object id='page:page1.jsp'><property value='260' name='x'/><property value='240' name='y'/></pageflow-object>",
+    "<pageflow-object id='forward:path#success#page1.faces#@action:begin.do@'><property value='116,170,170,224' name='elbowsX'/><property value='92,92,232,232' name='elbowsY'/><property value='East_1' name='fromPort'/><property value='West_1' name='toPort'/><property value='success' name='label'/></pageflow-object>",
+    "<pageflow-object id='action:submit.do'><property value='400' name='x'/><property value='240' name='y'/></pageflow-object>",
+    "<pageflow-object id='page:results.jsp'><property value='600' name='x'/><property value='240' name='y'/></pageflow-object>",
+    "<pageflow-object id='forward:path#success#results.jsp#@action:submit.do@'><property value='436,500,500,564' name='elbowsX'/><property value='232,232,232,232' name='elbowsY'/><property value='East_1' name='fromPort'/><property value='West_1' name='toPort'/><property value='success' name='label'/></pageflow-object>",
+    "<pageflow-object id='action-call:@page:results.jsp@#@action:begin.do@'><property value='564,340,340,116' name='elbowsX'/><property value='221,221,103,103' name='elbowsY'/><property value='West_0' name='fromPort'/><property value='East_2' name='toPort'/></pageflow-object>",
+    "</view-properties>"
+})
+interface VIEW_PROPERTIES { }
\ No newline at end of file

Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/SharedFlow.jpfs
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/SharedFlow.jpfs	Sun Sep 12 20:22:56 2004
@@ -0,0 +1,24 @@
+package bindingInFaces;
+
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.SharedFlowController;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.Controller
+public class SharedFlow
+    extends SharedFlowController
+{
+    private String _someProperty = "shared flow property";
+
+    public String getSomeProperty()
+    {
+        return _someProperty;
+    }
+
+    public void setSomeProperty( String someProperty )
+    {
+        _someProperty = someProperty;
+    }
+}
+

Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/page1.jsfb
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/page1.jsfb	Sun Sep 12 20:22:56 2004
@@ -0,0 +1,41 @@
+package bindingInFaces;
+
+import javax.faces.component.UIOutput;
+import org.apache.beehive.netui.pageflow.FacesBackingBean;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+/**
+ * This is the default Faces Backing file for a JSF Page.
+ */
+@Jpf.FacesBacking
+public class page1 extends FacesBackingBean
+{
+    private String _someProperty = "backing file property";
+    private UIOutput _outputField = new UIOutput();
+
+    public UIOutput getOutputField()
+    {
+        return _outputField;
+    }
+
+    public void setOutputField( UIOutput outputField )
+    {
+        _outputField = outputField;
+    }
+    
+    public String getSomeProperty()
+    {
+        return _someProperty;
+    }
+
+    public void setSomeProperty( String someProperty )
+    {
+        _someProperty = someProperty;
+    }
+
+    public String getPageInput()
+    {
+        _outputField.setValue( getPageInput( "somePageInput" ) );
+        return null;
+    }
+}

Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/page1.jsp
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/page1.jsp	Sun Sep 12 20:22:56 2004
@@ -0,0 +1,33 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="f" uri="http://java.sun.com/jsf/core" %>
+<%@ taglib prefix="h" uri="http://java.sun.com/jsf/html" %>
+
+<html>
+    <head>
+    </head>
+    <body>
+        <f:view>
+
+
+
+            <h:form>
+                #{pageInput.somePageInput}: <h:outputText value="#{pageInput.somePageInput}"/>
+                <br/>
+                #{pageFlow.someProperty}: <h:inputText value="#{pageFlow.someProperty}"/>
+                <br/>
+                #{sharedFlow.someProperty}: <h:inputText value="#{sharedFlow.someProperty}"/>
+                <br/>
+                #{backing.someProperty}: <h:inputText value="#{backing.someProperty}"/>
+                <br/>
+                <br/>
+                <h:commandButton value="postback"/> This ensures that the page inputs don't get lost over postback.
+                <br/>
+                <h:commandButton value="get page input from backing" action="#{backing.getPageInput}"/>
+                    <span style="color:red"/><h:outputText binding="#{backing.outputField}" id="outputField"/></span>
+                    This ensures that the backing bean has access to page inputs.
+                    <br/>
+                <h:commandButton action="submit" value="submit"/> Send everything to a page flow action.
+            </h:form>
+        </f:view>
+    </body>
+</html>

Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/results.jsp
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/bindingInFaces/results.jsp	Sun Sep 12 20:22:56 2004
@@ -0,0 +1,20 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="netui" uri="http://beehive.apache.org/netui/tags-html-1.0"%>
+<%@ taglib prefix="netui-data" uri="http://beehive.apache.org/netui/tags-databinding-1.0"%>
+<%@ taglib prefix="netui-template" uri="http://beehive.apache.org/netui/tags-template-1.0"%>
+
+
+<netui:html>
+    <head>
+        <netui:base/>
+    </head>
+    <netui:body>
+        &#36;{pageFlow.someProperty}: <netui:span value="${pageFlow.someProperty}"/>
+        <br/>
+        &#36;{sharedFlow.someProperty}: <netui:span value="${sharedFlow.someProperty}"/>
+        <br/>
+        <netui:anchor action="begin">start over</netui:anchor>
+    </netui:body>
+</netui:html>
+
+  
\ No newline at end of file

Modified: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml	(original)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml	Sun Sep 12 20:22:56 2004
@@ -5,14 +5,26 @@
             <name>drt</name>
             <description>drt</description>
         </category>
+        <category>
+            <name>bvt</name>
+            <description>bvt</description>
+        </category>
     </categories>
     <tests>
         <test>
+            <name>BindingInFaces</name>
+            <description>Test of binding to pageInput, pageFlow, sharedFlow in a JSF page.</description>
+            <webapp>jsfWeb</webapp>
+            <categories>
+                <category>drt</category>
+            </categories>
+        </test>
+        <test>
             <name>FacesSmokeAnchors</name>
             <description>FacesSmokeAnchors</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -20,7 +32,7 @@
             <description>FacesSmokeBundle</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -28,7 +40,7 @@
             <description>FacesSmokeConversions</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -36,7 +48,7 @@
             <description>FacesSmokeDataTable</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -44,7 +56,7 @@
             <description>FacesSmokeFormOne</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -52,7 +64,7 @@
             <description>FacesSmokeFormTwo</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -60,7 +72,7 @@
             <description>FacesSmokeImage</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>
@@ -68,7 +80,7 @@
             <description>FacesSmokePanel</description>
             <webapp>jsfWeb</webapp>
             <categories>
-                <category>drt</category>
+                <category>bvt</category>
             </categories>
         </test>
         <test>

Added: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml	Sun Sep 12 20:22:56 2004
@@ -0,0 +1,454 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+   <ses:sessionName>BindingInFaces</ses:sessionName>
+   <ses:tester>rich</ses:tester>
+   <ses:startDate>12 Sep 2004, 05:05:07.670 PM MDT</ses:startDate>
+   <ses:description>Test of binding to pageInput, pageFlow, sharedFlow in a JSF page.</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>/jsfWeb/bindingInFaces/BindingInFacesController.jpf</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</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=64B1EE34A4FD1C9B5397253EED55BAA0</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>&lt;html>
+    &lt;head>
+    &lt;/head>
+    &lt;body>
+        
+
+
+
+            &lt;form id="_id0" method="post" action="/jsfWeb/bindingInFaces/page1.faces" enctype="application/x-www-form-urlencoded">
+
+                #{pageInput.somePageInput}: a page input
+                &lt;br/>
+                #{pageFlow.someProperty}: &lt;input type="text" name="_id0:_id2" value="page flow property" />
+                &lt;br/>
+                #{sharedFlow.someProperty}: &lt;input type="text" name="_id0:_id3" value="shared flow property" />
+                &lt;br/>
+                #{backing.someProperty}: &lt;input type="text" name="_id0:_id4" value="backing file property" />
+                &lt;br/>
+                &lt;br/>
+                &lt;input type="submit" name="_id0:_id5" value="postback" /> This ensures that the page inputs don't get lost over postback.
+                &lt;br/>
+                &lt;input type="submit" name="_id0:_id6" value="get page input from backing" />
+                    &lt;span style="color:red"/>&lt;span id="_id0:outputField">&lt;/span>&lt;/span>
+                    This ensures that the backing bean has access to page inputs.
+                    &lt;br/>
+                &lt;input type="submit" name="_id0:_id7" value="submit" /> Send everything to a page flow action.
+            &lt;input type="hidden" name="_id0" value="_id0" />&lt;/form>
+        
+    &lt;/body>
+&lt;/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>/jsfWeb/bindingInFaces/page1.faces</ses:uri>
+            <ses:method>POST</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>_id0</ses:name>
+                  <ses:value>_id0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id2</ses:name>
+                  <ses:value>page flow property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id3</ses:name>
+                  <ses:value>shared flow property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id4</ses:name>
+                  <ses:value>backing file property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id5</ses:name>
+                  <ses:value>postback</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</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>128</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=64B1EE34A4FD1C9B5397253EED55BAA0</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/jsfWeb/bindingInFaces/BindingInFacesController.jpf</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>&lt;html>
+    &lt;head>
+    &lt;/head>
+    &lt;body>
+        
+
+
+
+            &lt;form id="_id0" method="post" action="/jsfWeb/bindingInFaces/page1.faces" enctype="application/x-www-form-urlencoded">
+
+                #{pageInput.somePageInput}: a page input
+                &lt;br/>
+                #{pageFlow.someProperty}: &lt;input type="text" name="_id0:_id2" value="page flow property" />
+                &lt;br/>
+                #{sharedFlow.someProperty}: &lt;input type="text" name="_id0:_id3" value="shared flow property" />
+                &lt;br/>
+                #{backing.someProperty}: &lt;input type="text" name="_id0:_id4" value="backing file property" />
+                &lt;br/>
+                &lt;br/>
+                &lt;input type="submit" name="_id0:_id5" value="postback" /> This ensures that the page inputs don't get lost over postback.
+                &lt;br/>
+                &lt;input type="submit" name="_id0:_id6" value="get page input from backing" />
+                    &lt;span style="color:red"/>&lt;span id="_id0:outputField">&lt;/span>&lt;/span>
+                    This ensures that the backing bean has access to page inputs.
+                    &lt;br/>
+                &lt;input type="submit" name="_id0:_id7" value="submit" /> Send everything to a page flow action.
+            &lt;input type="hidden" name="_id0" value="_id0" />&lt;/form>
+        
+    &lt;/body>
+&lt;/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>/jsfWeb/bindingInFaces/page1.faces</ses:uri>
+            <ses:method>POST</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>_id0</ses:name>
+                  <ses:value>_id0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id2</ses:name>
+                  <ses:value>page flow property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id3</ses:name>
+                  <ses:value>shared flow property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id4</ses:name>
+                  <ses:value>backing file property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id6</ses:name>
+                  <ses:value>get page input from backing</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</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>147</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=64B1EE34A4FD1C9B5397253EED55BAA0</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/jsfWeb/bindingInFaces/page1.faces</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>&lt;html>
+    &lt;head>
+    &lt;/head>
+    &lt;body>
+        
+
+
+
+            &lt;form id="_id0" method="post" action="/jsfWeb/bindingInFaces/page1.faces" enctype="application/x-www-form-urlencoded">
+
+                #{pageInput.somePageInput}: a page input
+                &lt;br/>
+                #{pageFlow.someProperty}: &lt;input type="text" name="_id0:_id2" value="page flow property" />
+                &lt;br/>
+                #{sharedFlow.someProperty}: &lt;input type="text" name="_id0:_id3" value="shared flow property" />
+                &lt;br/>
+                #{backing.someProperty}: &lt;input type="text" name="_id0:_id4" value="backing file property" />
+                &lt;br/>
+                &lt;br/>
+                &lt;input type="submit" name="_id0:_id5" value="postback" /> This ensures that the page inputs don't get lost over postback.
+                &lt;br/>
+                &lt;input type="submit" name="_id0:_id6" value="get page input from backing" />
+                    &lt;span style="color:red"/>&lt;span id="_id0:outputField">a page input&lt;/span>&lt;/span>
+                    This ensures that the backing bean has access to page inputs.
+                    &lt;br/>
+                &lt;input type="submit" name="_id0:_id7" value="submit" /> Send everything to a page flow action.
+            &lt;input type="hidden" name="_id0" value="_id0" />&lt;/form>
+        
+    &lt;/body>
+&lt;/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>/jsfWeb/bindingInFaces/page1.faces</ses:uri>
+            <ses:method>POST</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>_id0</ses:name>
+                  <ses:value>_id0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id2</ses:name>
+                  <ses:value>changed page flow property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id3</ses:name>
+                  <ses:value>changed shared flow property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id4</ses:name>
+                  <ses:value>backing file property</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>_id0:_id7</ses:name>
+                  <ses:value>submit</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</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>142</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=64B1EE34A4FD1C9B5397253EED55BAA0</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/jsfWeb/bindingInFaces/page1.faces</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[<!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/jsfWeb/bindingInFaces/results.jsp">
+    </head>
+    <body>
+        &#36;{pageFlow.someProperty}: <span>changed page flow property</span>
+        <br/>
+        &#36;{sharedFlow.someProperty}: <span>changed shared flow property</span>
+        <br/>
+        <a href="/jsfWeb/bindingInFaces/begin.do">start over</a>
+    </body>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+   </ses:tests>
+   <ses:endDate>12 Sep 2004, 05:05:57.823 PM MDT</ses:endDate>
+   <ses:testCount>4</ses:testCount>
+</ses:recorderSession>

Modified: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/JpfFaces.xml
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/JpfFaces.xml	(original)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/JpfFaces.xml	Sun Sep 12 20:22:56 2004
@@ -2,7 +2,7 @@
 <ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
    <ses:sessionName>JpfFaces</ses:sessionName>
    <ses:tester>rich</ses:tester>
-   <ses:startDate>23 Aug 2004, 01:32:40.097 PM MDT</ses:startDate>
+   <ses:startDate>12 Sep 2004, 05:03:41.356 PM MDT</ses:startDate>
    <ses:description>Test of basic JSF / page flow integration, including raising actions and passing forms from JSF pages and backing files.</ses:description>
    <ses:tests>
       <ses:test>
@@ -18,7 +18,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -44,7 +44,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -56,7 +56,7 @@
                </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/20040707 Firefox/0.9.2</ses:value>
+                  <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>
@@ -78,8 +78,7 @@
             &lt;a id="go2form:go3button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go3button'; document.forms['go2form'].submit(); return false;">go to page3 (no form)&lt;/a>
             &lt;br/>
             &lt;a id="go2form:go4button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go4button'; document.forms['go2form'].submit(); return false;">go to page4 (no CommandHandler)&lt;/a>
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==" />
- &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
+        &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
     
 &lt;/HTML></ses:responseBody>
          </ses:response>
@@ -95,10 +94,6 @@
             <ses:method>POST</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==</ses:value>
-               </ses:parameter>
-               <ses:parameter>
                   <ses:name>go2form</ses:name>
                   <ses:value>go2form</ses:value>
                </ses:parameter>
@@ -114,7 +109,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -140,7 +135,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>content-length</ses:name>
-                  <ses:value>3700</ses:value>
+                  <ses:value>70</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>content-type</ses:name>
@@ -148,7 +143,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -164,7 +159,7 @@
                </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/20040707 Firefox/0.9.2</ses:value>
+                  <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>
@@ -186,8 +181,7 @@
             &lt;a id="go2form:go3button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go3button'; document.forms['go2form'].submit(); return false;">go to page3 (no form)&lt;/a>
             &lt;br/>
             &lt;a id="go2form:go4button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go4button'; document.forms['go2form'].submit(); return false;">go to page4 (no CommandHandler)&lt;/a>
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==" />
- &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
+        &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
     
 &lt;/HTML></ses:responseBody>
          </ses:response>
@@ -203,10 +197,6 @@
             <ses:method>POST</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==</ses:value>
-               </ses:parameter>
-               <ses:parameter>
                   <ses:name>go2form</ses:name>
                   <ses:value>go2form</ses:value>
                </ses:parameter>
@@ -216,13 +206,13 @@
                </ses:parameter>
                <ses:parameter>
                   <ses:name>go2form:foo</ses:name>
-                  <ses:value>no stay</ses:value>
+                  <ses:value>hello there</ses:value>
                </ses:parameter>
             </ses:parameters>
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -248,7 +238,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>content-length</ses:name>
-                  <ses:value>3703</ses:value>
+                  <ses:value>77</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>content-type</ses:name>
@@ -256,7 +246,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -272,28 +262,27 @@
                </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/20040707 Firefox/0.9.2</ses:value>
+                  <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>&lt;html>
-    &lt;head> &lt;title>Page Flow / JSF&lt;/title> &lt;/head>
-    &lt;body bgcolor="white">
-    &lt;h3>Page Flow / JSF: page 2&lt;/h3>
+            <ses:responseBody><![CDATA[<html>
+    <head> <title>Page Flow / JSF</title> </head>
+    <body bgcolor="white">
+    <h3>Page Flow / JSF: page 2</h3>
     
-        Message from page flow: &lt;i>&lt;span id="msg">got form; bar was 'no stay'&lt;/span>&lt;/i>
-        &lt;br/>
+        Message from page flow: <i><span id="msg">got form; bar was 'hello there'</span></i>
+        <br/>
 
-        &lt;form id="go1form" method="post" action="/jsfWeb/jpfFaces/page2.faces" enctype="application/x-www-form-urlencoded">
+        <form id="go1form" method="post" action="/jsfWeb/jpfFaces/page2.faces" enctype="application/x-www-form-urlencoded">
 
-            &lt;input id="go1form:go1button" type="submit" name="go1form:go1button" value="back to page 1" />
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAJ3BAAAAApzcQB+AABwdAApamF2YXguZmFjZXMuY29tcG9uZW50Lmh0bWwuSHRtbE91dHB1dFRleHRwdAADbXNnc3EAfgAAc3EAfgAFAAAAAXcEAAAACnNxAH4AAHB0ACxqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sQ29tbWFuZEJ1dHRvbnB0AAlnbzFidXR0b254dAAjamF2YXguZmFjZXMuY29tcG9uZW50Lmh0bWwuSHRtbEZvcm1wdAAHZ28xZm9ybXh0ACBqYXZheC5mYWNlcy5jb21wb25lbnQuVUlWaWV3Um9vdHBwdXIAE1tMamF2YS5sYW5nLk9iamVjdDuQzlifEHMpbAIAAHhwAAAAAnVxAH4AEgAAAAR1cQB+ABIAAAAIc3IAEWphdmEudXRpbC5IYXNoTWFwBQfawcMWYNEDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA/QAAAAAAADHcIAAAAEAAAAAF0ACRqYXZheC5mYWNlcy53ZWJhcHAuQ1VSUkVOVF9WSUVXX1JPT1RxAH4AGHhwcHBzcgARamF2YS5sYW5nLkJvb2xlYW7NIHKA1Zz67gIAAVoABXZhbHVleHABc3EAfgAZAHBwdAAKSFRNTF9CQVNJQ3QAEy9qcGZGYWNlcy9wYWdlMi5qc3BzcgAQamF2YS51dGlsLkxvY2FsZX74EWCcMPnsAgAESQAIaGFzaGNvZGVMAAdjb3VudHJ5cQB+AAJMAAhsYW5ndWFnZXEAfgACTAAHdmFyaWFudHEAfgACeHD/////dAAAdAACZW5xAH4AIHVxAH4AEgAAAAJ1cQB+ABIAAAACdXEAfgASAAAABnVxAH4AEgAAAAN1cQB+ABIAAAAIc3EAfgAWP0AAAAAAAAx3CAAAABAAAAAAeHVxAH4AEgAAAAJ1cgATW0xqYXZhLmxhbmcuU3RyaW5nO63SVufpHXtHAgAAeHAAAAABdAAFdmFsdWV1cQB+ABIAAAABc3IAJmphdmF4LmZhY2VzLmNvbXBvbmVudC5TdGF0ZUhvbGRlclNhdmVyWcqzPZOczU0CAAJMAAljbGFzc05hbWVxAH4AAkwACnNhdmVkU3RhdGV0ABJMamF2YS9sYW5nL09iamVjdDt4cHQAIWNvbS5zdW4uZmFjZXMuZWwuVmFsdWVCaW5kaW5nSW1wbHQAFHJlcXVlc3RTY29wZS5tZXNzYWdldAADbXNncQB+AAlxAH4AGnEAfgAbdAAQamF2YXguZmFjZXMuVGV4dHBwcHEAfgAacQB+ABtwcHB1cQB+ABIAAAAAdXEAfgASAAAAAnVxAH4AEgAAABZ1cQB+ABIAAAAIc3EAfgAWP0AAAAAAAAx3CAAAABAAAAABdAAgamF2YXguZmFjZXMud2ViYXBwLkNPTVBPTkVOVF9JRFNzcQB+AAUAAAABdwQAAAAKcQB+AA54eHB0AAdnbzFmb3JtcQB+ABBxAH4AGnEAfgAbdAAQamF2YXguZmFjZXMuRm9ybXBwcHB0ACFhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRwcHBwcHBwcHBwcHBwcHBwcHVxAH4AEgAAAAF1cQB+ABIAAAACdXEAfgASAAAAHXVxAH4AEgAAAAZ1cQB+ABIAAAAIc3EAfgAWP0AAAAAAAAx3CAAAABAAAAAAeHB0ABFnbzFmb3JtOmdvMWJ1dHRvbnEAfgAOcQB+ABpxAH4AG3QAEmphdmF4LmZhY2VzLkJ1dHRvbnBzcQB+AC10AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ28xcHEAfgAbcQB+ABt0AA5iYWNrIHRvIHBhZ2UgMXBwcHEAfgAbcQB+ABtwcHBwcHBwcHBwcHBwcHBwcQB+ABtxAH4AG3BwcHB0AAZzdWJtaXR1cQB+ABIAAAAA" />
- &lt;input type="hidden" name="go1form" value="go1form" />&lt;/form>
+            <input id="go1form:go1button" type="submit" name="go1form:go1button" value="back to page 1" />
+        <input type="hidden" name="go1form" value="go1form" /></form>
     
-&lt;/HTML></ses:responseBody>
+</HTML>]]></ses:responseBody>
          </ses:response>
       </ses:test>
       <ses:test>
@@ -307,10 +296,6 @@
             <ses:method>POST</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAJ3BAAAAApzcQB+AABwdAApamF2YXguZmFjZXMuY29tcG9uZW50Lmh0bWwuSHRtbE91dHB1dFRleHRwdAADbXNnc3EAfgAAc3EAfgAFAAAAAXcEAAAACnNxAH4AAHB0ACxqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sQ29tbWFuZEJ1dHRvbnB0AAlnbzFidXR0b254dAAjamF2YXguZmFjZXMuY29tcG9uZW50Lmh0bWwuSHRtbEZvcm1wdAAHZ28xZm9ybXh0ACBqYXZheC5mYWNlcy5jb21wb25lbnQuVUlWaWV3Um9vdHBwdXIAE1tMamF2YS5sYW5nLk9iamVjdDuQzlifEHMpbAIAAHhwAAAAAnVxAH4AEgAAAAR1cQB+ABIAAAAIc3IAEWphdmEudXRpbC5IYXNoTWFwBQfawcMWYNEDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA/QAAAAAAADHcIAAAAEAAAAAF0ACRqYXZheC5mYWNlcy53ZWJhcHAuQ1VSUkVOVF9WSUVXX1JPT1RxAH4AGHhwcHBzcgARamF2YS5sYW5nLkJvb2xlYW7NIHKA1Zz67gIAAVoABXZhbHVleHABc3EAfgAZAHBwdAAKSFRNTF9CQVNJQ3QAEy9qcGZGYWNlcy9wYWdlMi5qc3BzcgAQamF2YS51dGlsLkxvY2FsZX74EWCcMPnsAgAESQAIaGFzaGNvZGVMAAdjb3VudHJ5cQB+AAJMAAhsYW5ndWFnZXEAfgACTAAHdmFyaWFudHEAfgACeHD/////dAAAdAACZW5xAH4AIHVxAH4AEgAAAAJ1cQB+ABIAAAACdXEAfgASAAAABnVxAH4AEgAAAAN1cQB+ABIAAAAIc3EAfgAWP0AAAAAAAAx3CAAAABAAAAAAeHVxAH4AEgAAAAJ1cgATW0xqYXZhLmxhbmcuU3RyaW5nO63SVufpHXtHAgAAeHAAAAABdAAFdmFsdWV1cQB+ABIAAAABc3IAJmphdmF4LmZhY2VzLmNvbXBvbmVudC5TdGF0ZUhvbGRlclNhdmVyWcqzPZOczU0CAAJMAAljbGFzc05hbWVxAH4AAkwACnNhdmVkU3RhdGV0ABJMamF2YS9sYW5nL09iamVjdDt4cHQAIWNvbS5zdW4uZmFjZXMuZWwuVmFsdWVCaW5kaW5nSW1wbHQAFHJlcXVlc3RTY29wZS5tZXNzYWdldAADbXNncQB+AAlxAH4AGnEAfgAbdAAQamF2YXguZmFjZXMuVGV4dHBwcHEAfgAacQB+ABtwcHB1cQB+ABIAAAAAdXEAfgASAAAAAnVxAH4AEgAAABZ1cQB+ABIAAAAIc3EAfgAWP0AAAAAAAAx3CAAAABAAAAABdAAgamF2YXguZmFjZXMud2ViYXBwLkNPTVBPTkVOVF9JRFNzcQB+AAUAAAABdwQAAAAKcQB+AA54eHB0AAdnbzFmb3JtcQB+ABBxAH4AGnEAfgAbdAAQamF2YXguZmFjZXMuRm9ybXBwcHB0ACFhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRwcHBwcHBwcHBwcHBwcHBwcHVxAH4AEgAAAAF1cQB+ABIAAAACdXEAfgASAAAAHXVxAH4AEgAAAAZ1cQB+ABIAAAAIc3EAfgAWP0AAAAAAAAx3CAAAABAAAAAAeHB0ABFnbzFmb3JtOmdvMWJ1dHRvbnEAfgAOcQB+ABpxAH4AG3QAEmphdmF4LmZhY2VzLkJ1dHRvbnBzcQB+AC10AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ28xcHEAfgAbcQB+ABt0AA5iYWNrIHRvIHBhZ2UgMXBwcHEAfgAbcQB+ABtwcHBwcHBwcHBwcHBwcHBwcQB+ABtxAH4AG3BwcHB0AAZzdWJtaXR1cQB+ABIAAAAA</ses:value>
-               </ses:parameter>
-               <ses:parameter>
                   <ses:name>go1form</ses:name>
                   <ses:value>go1form</ses:value>
                </ses:parameter>
@@ -322,7 +307,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -348,7 +333,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>content-length</ses:name>
-                  <ses:value>2384</ses:value>
+                  <ses:value>50</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>content-type</ses:name>
@@ -356,7 +341,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -372,7 +357,7 @@
                </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/20040707 Firefox/0.9.2</ses:value>
+                  <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>
@@ -394,8 +379,7 @@
             &lt;a id="go2form:go3button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go3button'; document.forms['go2form'].submit(); return false;">go to page3 (no form)&lt;/a>
             &lt;br/>
             &lt;a id="go2form:go4button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go4button'; document.forms['go2form'].submit(); return false;">go to page4 (no CommandHandler)&lt;/a>
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==" />
- &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
+        &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
     
 &lt;/HTML></ses:responseBody>
          </ses:response>
@@ -411,10 +395,6 @@
             <ses:method>POST</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==</ses:value>
-               </ses:parameter>
-               <ses:parameter>
                   <ses:name>go2form</ses:name>
                   <ses:value>go2form</ses:value>
                </ses:parameter>
@@ -430,7 +410,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -456,7 +436,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>content-length</ses:name>
-                  <ses:value>3696</ses:value>
+                  <ses:value>66</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>content-type</ses:name>
@@ -464,7 +444,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -480,25 +460,24 @@
                </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/20040707 Firefox/0.9.2</ses:value>
+                  <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>&lt;html>
-    &lt;head> &lt;title>Page Flow / JSF&lt;/title> &lt;/head>
-    &lt;body bgcolor="white">
-    &lt;h3>Page Flow / JSF: page 3&lt;/h3>
+            <ses:responseBody><![CDATA[<html>
+    <head> <title>Page Flow / JSF</title> </head>
+    <body bgcolor="white">
+    <h3>Page Flow / JSF: page 3</h3>
     
-        &lt;form id="go1form" method="post" action="/jsfWeb/jpfFaces/page3.faces" enctype="application/x-www-form-urlencoded">
+        <form id="go1form" method="post" action="/jsfWeb/jpfFaces/page3.faces" enctype="application/x-www-form-urlencoded">
 
-            &lt;input id="go1form:go1button" type="submit" name="go1form:go1button" value="back to page 1" />
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAABdwQAAAAKc3EAfgAAcHQALGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kQnV0dG9ucHQACWdvMWJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzFmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAPAAAABHVxAH4ADwAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAVeHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+ABYAcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UzLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAddXEAfgAPAAAAAXVxAH4ADwAAAAJ1cQB+AA8AAAAWdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAAAXcEAAAACnEAfgALeHhwdAAHZ28xZm9ybXEAfgANcQB+ABdxAH4AGHQAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+AA8AAAABdXEAfgAPAAAAAnVxAH4ADwAAAB11cQB+AA8AAAAGdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28xZm9ybTpnbzFidXR0b25xAH4AC3EAfgAXcQB+ABh0ABJqYXZheC5mYWNlcy5CdXR0b25wc3IAJmphdmF4LmZhY2VzLmNvbXBvbmVudC5TdGF0ZUhvbGRlclNhdmVyWcqzPZOczU0CAAJMAAljbGFzc05hbWVxAH4AAkwACnNhdmVkU3RhdGV0ABJMamF2YS9sYW5nL09iamVjdDt4cHQAKGNvbS5zdW4uZmFjZXMudXRpbC5Db25zdGFudE1ldGhvZEJpbmRpbmd0AANnbzFwcQB+ABhxAH4AGHQADmJhY2sgdG8gcGFnZSAxcHBwcQB+ABhxAH4AGHBwcHBwcHBwcHBwcHBwcHBxAH4AGHEAfgAYcHBwcHQABnN1Ym1pdHVxAH4ADwAAAAA=" />
- &lt;input type="hidden" name="go1form" value="go1form" />&lt;/form>
+            <input id="go1form:go1button" type="submit" name="go1form:go1button" value="back to page 1" />
+        <input type="hidden" name="go1form" value="go1form" /></form>
     
-&lt;/HTML></ses:responseBody>
+</HTML>]]></ses:responseBody>
          </ses:response>
       </ses:test>
       <ses:test>
@@ -512,10 +491,6 @@
             <ses:method>POST</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAABdwQAAAAKc3EAfgAAcHQALGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kQnV0dG9ucHQACWdvMWJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzFmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAPAAAABHVxAH4ADwAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAVeHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+ABYAcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UzLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAddXEAfgAPAAAAAXVxAH4ADwAAAAJ1cQB+AA8AAAAWdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAAAXcEAAAACnEAfgALeHhwdAAHZ28xZm9ybXEAfgANcQB+ABdxAH4AGHQAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+AA8AAAABdXEAfgAPAAAAAnVxAH4ADwAAAB11cQB+AA8AAAAGdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28xZm9ybTpnbzFidXR0b25xAH4AC3EAfgAXcQB+ABh0ABJqYXZheC5mYWNlcy5CdXR0b25wc3IAJmphdmF4LmZhY2VzLmNvbXBvbmVudC5TdGF0ZUhvbGRlclNhdmVyWcqzPZOczU0CAAJMAAljbGFzc05hbWVxAH4AAkwACnNhdmVkU3RhdGV0ABJMamF2YS9sYW5nL09iamVjdDt4cHQAKGNvbS5zdW4uZmFjZXMudXRpbC5Db25zdGFudE1ldGhvZEJpbmRpbmd0AANnbzFwcQB+ABhxAH4AGHQADmJhY2sgdG8gcGFnZSAxcHBwcQB+ABhxAH4AGHBwcHBwcHBwcHBwcHBwcHBxAH4AGHEAfgAYcHBwcHQABnN1Ym1pdHVxAH4ADwAAAAA=</ses:value>
-               </ses:parameter>
-               <ses:parameter>
                   <ses:name>go1form</ses:name>
                   <ses:value>go1form</ses:value>
                </ses:parameter>
@@ -527,7 +502,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -553,7 +528,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>content-length</ses:name>
-                  <ses:value>1938</ses:value>
+                  <ses:value>50</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>content-type</ses:name>
@@ -561,7 +536,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -577,7 +552,7 @@
                </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/20040707 Firefox/0.9.2</ses:value>
+                  <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>
@@ -599,8 +574,7 @@
             &lt;a id="go2form:go3button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go3button'; document.forms['go2form'].submit(); return false;">go to page3 (no form)&lt;/a>
             &lt;br/>
             &lt;a id="go2form:go4button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go4button'; document.forms['go2form'].submit(); return false;">go to page4 (no CommandHandler)&lt;/a>
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==" />
- &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
+        &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
     
 &lt;/HTML></ses:responseBody>
          </ses:response>
@@ -616,10 +590,6 @@
             <ses:method>POST</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==</ses:value>
-               </ses:parameter>
-               <ses:parameter>
                   <ses:name>go2form</ses:name>
                   <ses:value>go2form</ses:value>
                </ses:parameter>
@@ -635,7 +605,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -661,7 +631,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>content-length</ses:name>
-                  <ses:value>3696</ses:value>
+                  <ses:value>66</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>content-type</ses:name>
@@ -669,7 +639,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>JSESSIONID=50F16FFC5F3E9F9E0095E598F7FAD65C</ses:value>
+                  <ses:value>JSESSIONID=64B1EE34A4FD1C9B5397253EED55BAA0</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
@@ -685,132 +655,27 @@
                </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/20040707 Firefox/0.9.2</ses:value>
-               </ses:header>
-            </ses:headers>
-         </ses:request>
-         <ses:response>
-            <ses:statusCode>200</ses:statusCode>
-            <ses:reason/>
-            <ses:responseBody>&lt;html>
-    &lt;head> &lt;title>Page Flow / JSF&lt;/title> &lt;/head>
-    &lt;body bgcolor="white">
-    &lt;h3>Page Flow / JSF: page 4&lt;/h3>
-    
-        &lt;form id="go1form" method="post" action="/jsfWeb/jpfFaces/page4.faces" enctype="application/x-www-form-urlencoded">
-
-            &lt;input id="go1form:go1button" type="submit" name="go1form:go1button" value="back to page 1" />
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAABdwQAAAAKc3EAfgAAcHQALGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kQnV0dG9ucHQACWdvMWJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzFmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAPAAAABHVxAH4ADwAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAVeHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+ABYAcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2U0LmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAddXEAfgAPAAAAAXVxAH4ADwAAAAJ1cQB+AA8AAAAWdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAAAXcEAAAACnEAfgALeHhwdAAHZ28xZm9ybXEAfgANcQB+ABdxAH4AGHQAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+AA8AAAABdXEAfgAPAAAAAnVxAH4ADwAAAB11cQB+AA8AAAAGdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28xZm9ybTpnbzFidXR0b25xAH4AC3EAfgAXcQB+ABh0ABJqYXZheC5mYWNlcy5CdXR0b25wc3IAJmphdmF4LmZhY2VzLmNvbXBvbmVudC5TdGF0ZUhvbGRlclNhdmVyWcqzPZOczU0CAAJMAAljbGFzc05hbWVxAH4AAkwACnNhdmVkU3RhdGV0ABJMamF2YS9sYW5nL09iamVjdDt4cHQAKGNvbS5zdW4uZmFjZXMudXRpbC5Db25zdGFudE1ldGhvZEJpbmRpbmd0AANnbzFwcQB+ABhxAH4AGHQADmJhY2sgdG8gcGFnZSAxcHBwcQB+ABhxAH4AGHBwcHBwcHBwcHBwcHBwcHBxAH4AGHEAfgAYcHBwcHQABnN1Ym1pdHVxAH4ADwAAAAA=" />
- &lt;input type="hidden" name="go1form" value="go1form" />&lt;/form>
-    
-&lt;/HTML></ses:responseBody>
-         </ses:response>
-      </ses:test>
-      <ses:test>
-         <ses:testNumber>8</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>/jsfWeb/jpfFaces/page4.faces</ses:uri>
-            <ses:method>POST</ses:method>
-            <ses:parameters>
-               <ses:parameter>
-                  <ses:name>com.sun.faces.VIEW</ses:name>
-                  <ses:value>rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAABdwQAAAAKc3EAfgAAcHQALGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kQnV0dG9ucHQACWdvMWJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzFmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAPAAAABHVxAH4ADwAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAVeHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+ABYAcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2U0LmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAddXEAfgAPAAAAAXVxAH4ADwAAAAJ1cQB+AA8AAAAWdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAAAXcEAAAACnEAfgALeHhwdAAHZ28xZm9ybXEAfgANcQB+ABdxAH4AGHQAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+AA8AAAABdXEAfgAPAAAAAnVxAH4ADwAAAB11cQB+AA8AAAAGdXEAfgAPAAAACHNxAH4AEz9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28xZm9ybTpnbzFidXR0b25xAH4AC3EAfgAXcQB+ABh0ABJqYXZheC5mYWNlcy5CdXR0b25wc3IAJmphdmF4LmZhY2VzLmNvbXBvbmVudC5TdGF0ZUhvbGRlclNhdmVyWcqzPZOczU0CAAJMAAljbGFzc05hbWVxAH4AAkwACnNhdmVkU3RhdGV0ABJMamF2YS9sYW5nL09iamVjdDt4cHQAKGNvbS5zdW4uZmFjZXMudXRpbC5Db25zdGFudE1ldGhvZEJpbmRpbmd0AANnbzFwcQB+ABhxAH4AGHQADmJhY2sgdG8gcGFnZSAxcHBwcQB+ABhxAH4AGHBwcHBwcHBwcHBwcHBwcHBxAH4AGHEAfgAYcHBwcHQABnN1Ym1pdHVxAH4ADwAAAAA=</ses:value>
-               </ses:parameter>
-               <ses:parameter>
-                  <ses:name>go1form</ses:name>
-                  <ses:value>go1form</ses:value>
-               </ses:parameter>
-               <ses:parameter>
-                  <ses:name>go1form:go1button</ses:name>
-                  <ses:value>back to page 1</ses:value>
-               </ses:parameter>
-            </ses:parameters>
-            <ses:cookies>
-               <ses:cookie>
-                  <ses:name>JSESSIONID</ses:name>
-                  <ses:value>50F16FFC5F3E9F9E0095E598F7FAD65C</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>1938</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=50F16FFC5F3E9F9E0095E598F7FAD65C</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/jsfWeb/jpfFaces/page1.faces</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/20040707 Firefox/0.9.2</ses:value>
+                  <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>&lt;html>
-    &lt;head> &lt;title>Page Flow / JSF&lt;/title> &lt;/head>
-    &lt;body bgcolor="white">
-    &lt;h3>Page Flow / JSF: page 1&lt;/h3>
+            <ses:responseBody><![CDATA[<html>
+    <head> <title>Page Flow / JSF</title> </head>
+    <body bgcolor="white">
+    <h3>Page Flow / JSF: page 4</h3>
     
-        &lt;form id="go2form" method="post" action="/jsfWeb/jpfFaces/page1.faces" enctype="application/x-www-form-urlencoded">
+        <form id="go1form" method="post" action="/jsfWeb/jpfFaces/page4.faces" enctype="application/x-www-form-urlencoded">
 
-          	&lt;input id="go2form:foo" type="text" name="go2form:foo" />
-            &lt;br/>
-            &lt;a id="go2form:go2button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go2button'; document.forms['go2form'].submit(); return false;">go to page2 (pass a form)&lt;/a>
-                - type "stay" to make the CommandHandler return null
-            &lt;br/>
-            &lt;a id="go2form:go3button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go3button'; document.forms['go2form'].submit(); return false;">go to page3 (no form)&lt;/a>
-            &lt;br/>
-            &lt;a id="go2form:go4button" href="#" onclick="document.forms['go2form']['go2form:_idcl'].value='go2form:go4button'; document.forms['go2form'].submit(); return false;">go to page4 (no CommandHandler)&lt;/a>
-         &lt;input type="hidden" name="com.sun.faces.VIEW" value="rO0ABXNyACBjb20uc3VuLmZhY2VzLnV0aWwuVHJlZVN0cnVjdHVyZRRmG0QclWAgAgAETAAIY2hpbGRyZW50ABVMamF2YS91dGlsL0FycmF5TGlzdDtMAAljbGFzc05hbWV0ABJMamF2YS9sYW5nL1N0cmluZztMAAZmYWNldHN0ABNMamF2YS91dGlsL0hhc2hNYXA7TAACaWRxAH4AAnhwc3IAE2phdmEudXRpbC5BcnJheUxpc3R4gdIdmcdhnQMAAUkABHNpemV4cAAAAAF3BAAAAApzcQB+AABzcQB+AAUAAAAEdwQAAAAKc3EAfgAAcHQAKGphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxJbnB1dFRleHRwdAADZm9vc3EAfgAAcHQAKmphdmF4LmZhY2VzLmNvbXBvbmVudC5odG1sLkh0bWxDb21tYW5kTGlua3B0AAlnbzJidXR0b25zcQB+AABwcQB+AA1wdAAJZ28zYnV0dG9uc3EAfgAAcHEAfgANcHQACWdvNGJ1dHRvbnh0ACNqYXZheC5mYWNlcy5jb21wb25lbnQuaHRtbC5IdG1sRm9ybXB0AAdnbzJmb3JteHQAIGphdmF4LmZhY2VzLmNvbXBvbmVudC5VSVZpZXdSb290cHB1cgATW0xqYXZhLmxhbmcuT2JqZWN0O5DOWJ8QcylsAgAAeHAAAAACdXEAfgAWAAAABHVxAH4AFgAAAAhzcgARamF2YS51dGlsLkhhc2hNYXAFB9rBwxZg0QMAAkYACmxvYWRGYWN0b3JJAAl0aHJlc2hvbGR4cD9AAAAAAAAMdwgAAAAQAAAAAXQAJGphdmF4LmZhY2VzLndlYmFwcC5DVVJSRU5UX1ZJRVdfUk9PVHEAfgAceHBwcHNyABFqYXZhLmxhbmcuQm9vbGVhbs0gcoDVnPruAgABWgAFdmFsdWV4cAFzcQB+AB0AcHB0AApIVE1MX0JBU0lDdAATL2pwZkZhY2VzL3BhZ2UxLmpzcHNyABBqYXZhLnV0aWwuTG9jYWxlfvgRYJww+ewCAARJAAhoYXNoY29kZUwAB2NvdW50cnlxAH4AAkwACGxhbmd1YWdlcQB+AAJMAAd2YXJpYW50cQB+AAJ4cP////90AAB0AAJlbnEAfgAkdXEAfgAWAAAAAXVxAH4AFgAAAAJ1cQB+ABYAAAAWdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAXQAIGphdmF4LmZhY2VzLndlYmFwcC5DT01QT05FTlRfSURTc3EAfgAFAAAABHcEAAAACnEAfgALcQB+AA5xAH4AEHEAfgASeHhwdAAHZ28yZm9ybXEAfgAUcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLkZvcm1wcHBwdAAhYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAEdXEAfgAWAAAAAnVxAH4AFgAAAB91cQB+ABYAAAAKdXEAfgAWAAAAA3VxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4dXEAfgAWAAAAAnVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAAF0AAV2YWx1ZXVxAH4AFgAAAAFzcgAmamF2YXguZmFjZXMuY29tcG9uZW50LlN0YXRlSG9sZGVyU2F2ZXJZyrM9k5zNTQIAAkwACWNsYXNzTmFtZXEAfgACTAAKc2F2ZWRTdGF0ZXQAEkxqYXZhL2xhbmcvT2JqZWN0O3hwdAAhY29tLnN1bi5mYWNlcy5lbC5WYWx1ZUJpbmRpbmdJbXBsdAALYmFja2luZy5mb290AAtnbzJmb3JtOmZvb3EAfgALcQB+AB5xAH4AH3QAEGphdmF4LmZhY2VzLlRleHRwcHBxAH4AH3EAfgAfcQB+AB9xAH4AHnEAfgAfcQB+AB9wcHBwcHBxAH4AH3EAfgAfcHNyABFqYXZhLmxhbmcuSW50ZWdlchLioKT3gYc4AgABSQAFdmFsdWV4cgAQamF2YS5sYW5nLk51bWJlcoaslR0LlOCLAgAAeHCAAAAAcQB+AB9wcHBwcHBwcHBwcHBwcHEAfgAfcQB+AB9zcQB+AEOAAAAAcQB+AB9wcHBwdXEAfgAWAAAAAHVxAH4AFgAAAAJ1cQB+ABYAAAAcdXEAfgAWAAAABnVxAH4AFgAAAAhzcQB+ABo/QAAAAAAADHcIAAAAEAAAAAB4cHQAEWdvMmZvcm06Z28yYnV0dG9ucQB+AA5xAH4AHnEAfgAfdAAQamF2YXguZmFjZXMuTGlua3BzcQB+ADx0AEFvcmcuYXBhY2hlLmJlZWhpdmUubmV0dWkucGFnZWZsb3cuZmFjZXMuQmFja2luZ0NsYXNzTWV0aG9kQmluZGluZ3VxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjJwc3EAfgA8dAAiY29tLnN1bi5mYWNlcy5lbC5NZXRob2RCaW5kaW5nSW1wbHVxAH4AFgAAAAR0AA9jb21tYW5kSGFuZGxlcjJzcQB+ADxxAH4AP3QAB2JhY2tpbmdwdAAaI3tiYWNraW5nLmNvbW1hbmRIYW5kbGVyMn1wcQB+AB9xAH4AH3QAGWdvIHRvIHBhZ2UyIChwYXNzIGEgZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzNidXR0b25xAH4AEHEAfgAecQB+AB9xAH4ATnBzcQB+ADxxAH4AUHVxAH4AFgAAAAN0AA9jb21tYW5kSGFuZGxlcjNwc3EAfgA8cQB+AFR1cQB+ABYAAAAEdAAPY29tbWFuZEhhbmRsZXIzc3EAfgA8cQB+AD90AAdiYWNraW5ncHQAGiN7YmFja2luZy5jb21tYW5kSGFuZGxlcjN9cHEAfgAfcQB+AB90ABVnbyB0byBwYWdlMyAobm8gZm9ybSlwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHB1cQB+ABYAAAAAdXEAfgAWAAAAAnVxAH4AFgAAABx1cQB+ABYAAAAGdXEAfgAWAAAACHNxAH4AGj9AAAAAAAAMdwgAAAAQAAAAAHhwdAARZ28yZm9ybTpnbzRidXR0b25xAH4AEnEAfgAecQB+AB9xAH4ATnBzcQB+ADx0AChjb20uc3VuLmZhY2VzLnV0aWwuQ29uc3RhbnRNZXRob2RCaW5kaW5ndAADZ280cHEAfgAfcQB+AB90AB9nbyB0byBwYWdlNCAobm8gQ29tbWFuZEhhbmRsZXIpcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwdXEAfgAWAAAAAA==" />
- &lt;input type="hidden" name="go2form" value="go2form" />&lt;input type="hidden" name="go2form:_idcl" />&lt;/form>
+            <input id="go1form:go1button" type="submit" name="go1form:go1button" value="back to page 1" />
+        <input type="hidden" name="go1form" value="go1form" /></form>
     
-&lt;/HTML></ses:responseBody>
+</HTML>]]></ses:responseBody>
          </ses:response>
       </ses:test>
    </ses:tests>
-   <ses:endDate>23 Aug 2004, 01:33:12.353 PM MDT</ses:endDate>
-   <ses:testCount>8</ses:testCount>
+   <ses:endDate>12 Sep 2004, 05:04:30.938 PM MDT</ses:endDate>
+   <ses:testCount>7</ses:testCount>
 </ses:recorderSession>