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 2005/01/21 10:06:57 UTC
svn commit: r125908 - in incubator/beehive/trunk/netui: src/pageflow/org/apache/beehive/netui/pageflow src/pageflow/org/apache/beehive/netui/pageflow/faces/internal src/pageflow/org/apache/beehive/netui/pageflow/internal test/webapps/drt/coreWeb/miniTests/updateFormFromNestedPopup test/webapps/jsf test/webapps/jsf/jsfWeb/restorePreviousPage test/webapps/jsf/testRecorder/config test/webapps/jsf/testRecorder/tests test/webapps/urlTemplates/urlTemplates/index
Author: rich
Date: Fri Jan 21 01:06:52 2005
New Revision: 125908
URL: http://svn.apache.org/viewcvs?view=rev&rev=125908
Log:
Changes to allow preservation of the component tree in a JSF page, so the page can be returned to (intact) using a @Jpf.Forward with navigateTo=Jpf.NavigateTo.currentPage or navigateTo=Jpf.NavigateTo.previousPage.
Also, fixed the JSF DRT app to run again (mostly build changes).
DRT/BVT: netui (WinXP)
BB: self (linux)
Added:
incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/
incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/Controller.jpf (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsfb (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsp (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsfb (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsp (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/RestorePreviousPage.xml (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/Beehive.gif (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/linkDown.gif (contents, props changed)
incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/linkOver.gif (contents, props changed)
Removed:
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/miniTests/updateFormFromNestedPopup/ttt
Modified:
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java
incubator/beehive/trunk/netui/test/webapps/jsf/build.xml
incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml
incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml
incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml
Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java&r1=125907&p2=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java (original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/ForwardHandler.java Fri Jan 21 01:06:52 2005
@@ -339,6 +339,7 @@
}
}
+ RequestValues.setPreviousPageInfo( request, prevPageInfo );
return retFwd;
}
Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java&r1=125907&p2=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java (original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowController.java Fri Jan 21 01:06:52 2005
@@ -21,8 +21,6 @@
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSessionBindingEvent;
import javax.servlet.ServletContext;
-import javax.servlet.ServletRequest;
-import javax.servlet.ServletResponse;
import java.lang.reflect.Field;
import java.util.Map;
@@ -91,6 +89,7 @@
private ViewRenderer _returnActionViewRenderer = null;
private static final String DELETING_PAGEFLOW_ATTR = InternalConstants.ATTR_PREFIX + "deletingPageFlow";
+ private static final String SAVED_PREVIOUS_PAGE_INFO_ATTR = InternalConstants.ATTR_PREFIX + "savedPrevPageInfo";
private static final String CACHED_INFO_KEY = "cachedInfo";
private static final Logger _log = Logger.getInstance( PageFlowController.class );
@@ -447,7 +446,7 @@
* @see #getPreviousFormBean
* @see #getPreviousForwardPath
*/
- protected String getCurrentForwardPath()
+ public String getCurrentForwardPath()
{
PreviousPageInfo curPageInfo = getCurrentPageInfo();
String path = null;
@@ -649,7 +648,7 @@
return getURI();
}
- private boolean isPreviousActionInfoDisabled()
+ public boolean isPreviousActionInfoDisabled()
{
if ( alwaysTrackPreviousAction() ) return false;
@@ -658,7 +657,7 @@
return cc instanceof PageFlowControllerConfig && ( ( PageFlowControllerConfig ) cc ).isReturnToActionDisabled();
}
- private boolean isPreviousPageInfoDisabled()
+ public boolean isPreviousPageInfoDisabled()
{
if ( alwaysTrackPreviousPage() ) return false;
@@ -688,20 +687,17 @@
HttpServletRequest request, ServletContext servletContext,
boolean isSpecialForward )
{
- //
- // If previous-page is disabled (unused in this pageflow), just return.
- //
- if ( isPreviousPageInfoDisabled() ) return;
-
if ( forward != null )
{
+ //
+ // If previous-page is disabled (unused in this pageflow), or if we've already saved prevous-page info in
+ // this request (for example, forward to foo.faces which forwards to foo.jsp), just return.
+ //
+ if ( request.getAttribute( SAVED_PREVIOUS_PAGE_INFO_ATTR ) != null || isPreviousPageInfoDisabled() ) return;
+
String path = forward.getPath();
int queryPos = path.indexOf( '?' );
-
- if ( queryPos != -1 )
- {
- path = path.substring( 0, queryPos );
- }
+ if ( queryPos != -1 ) path = path.substring( 0, queryPos );
//
// If a form bean was generated in this request, add it to the most recent PreviousPageInfo, so when we
@@ -730,6 +726,7 @@
{
_previousPageInfo = _currentPageInfo;
_currentPageInfo = new PreviousPageInfo( forward, form, mapping );
+ request.setAttribute( SAVED_PREVIOUS_PAGE_INFO_ATTR, Boolean.TRUE );
}
}
}
Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java&r1=125907&p2=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java (original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PreviousPageInfo.java Fri Jan 21 01:06:52 2005
@@ -37,6 +37,7 @@
private ActionForm _form;
private String _mappingPath;
private transient ActionMapping _mapping;
+ private Object _clientState;
/**
@@ -140,5 +141,21 @@
public void setForward( ActionForward forward )
{
_forward = forward;
+ }
+
+ /**
+ * Get client state associated with the page (e.g., component tree state for a JSF page).
+ */
+ public Object getClientState()
+ {
+ return _clientState;
+ }
+
+ /**
+ * Set client state associated with the page (e.g., component tree state for a JSF page).
+ */
+ public void setClientState( Object clientState )
+ {
+ _clientState = clientState;
}
}
Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java&r1=125907&p2=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java (original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/faces/internal/PageFlowViewHandler.java Fri Jan 21 01:06:52 2005
@@ -17,6 +17,11 @@
*/
package org.apache.beehive.netui.pageflow.faces.internal;
+import org.apache.beehive.netui.pageflow.PageFlowUtils;
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.PreviousPageInfo;
+import org.apache.beehive.netui.pageflow.internal.RequestValues;
+
import javax.faces.application.ViewHandler;
import javax.faces.context.FacesContext;
import javax.faces.component.UIViewRoot;
@@ -52,7 +57,32 @@
public UIViewRoot createView(FacesContext context, String viewId)
{
- return _delegate.createView( context, viewId );
+ Object request = context.getExternalContext().getRequest();
+ HttpServletRequest httpRequest = null;
+
+ //
+ // First, if this is a navigateTo=Jpf.NavigateTo.currentPage or a navigateTo=Jpf.NavigateTo.previousPage,
+ // see if we've saved view state from the original page. If so, just restore that.
+ //
+ if ( request instanceof HttpServletRequest )
+ {
+ httpRequest = ( HttpServletRequest ) request;
+ PreviousPageInfo prevPageInfo = RequestValues.getPreviousPageInfo( httpRequest, true );
+
+ if ( prevPageInfo != null )
+ {
+ Object clientState = prevPageInfo.getClientState();
+
+ if ( clientState != null && clientState instanceof UIViewRoot )
+ {
+ return ( UIViewRoot ) clientState;
+ }
+ }
+ }
+
+ UIViewRoot viewRoot = _delegate.createView( context, viewId );
+ savePreviousPageInfo( httpRequest, viewId, viewRoot );
+ return viewRoot;
}
public String getActionURL(FacesContext context, String viewId)
@@ -78,20 +108,44 @@
public UIViewRoot restoreView(FacesContext context, String viewId)
{
Object request = context.getExternalContext().getRequest();
+ HttpServletRequest httpRequest = null;
if ( request instanceof HttpServletRequest )
{
- HttpServletRequest httpRequest = ( HttpServletRequest ) request;
+ httpRequest = ( HttpServletRequest ) request;
+ //
+ // If we did a forward in PageFlowNavigationHandler, don't try to restore the view.
+ //
if ( httpRequest.getAttribute( PageFlowNavigationHandler.ALREADY_FORWARDED_ATTR ) != null )
{
return null;
}
}
- return _delegate.restoreView( context, viewId );
+ UIViewRoot viewRoot = _delegate.restoreView( context, viewId );
+ savePreviousPageInfo( httpRequest, viewId, viewRoot );
+ return viewRoot;
}
+ private static void savePreviousPageInfo( HttpServletRequest request, String viewId, UIViewRoot viewRoot )
+ {
+ //
+ // Save the current view state in the PreviousPageInfo structure of the current page flow.
+ //
+ if ( request != null )
+ {
+ PageFlowController curPageFlow = PageFlowUtils.getCurrentPageFlow( request );
+
+ if ( curPageFlow != null && ! curPageFlow.isPreviousPageInfoDisabled()
+ && viewId.equals( curPageFlow.getCurrentForwardPath() ) )
+ {
+ PreviousPageInfo prevPageInfo = curPageFlow.getCurrentPageInfo();
+ prevPageInfo.setClientState( viewRoot );
+ }
+ }
+ }
+
public void writeState(FacesContext context) throws IOException
{
_delegate.writeState( context );
Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java&r1=125907&p2=incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java (original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/RequestValues.java Fri Jan 21 01:06:52 2005
@@ -19,6 +19,7 @@
import org.apache.struts.action.ActionForm;
import org.apache.beehive.netui.pageflow.FlowController;
+import org.apache.beehive.netui.pageflow.PreviousPageInfo;
import javax.servlet.ServletRequest;
@@ -36,6 +37,7 @@
private static final String FORWARDED_FORMBEAN_ATTR = ATTR_PREFIX + "forwardedForm";
private static final String CURRENT_FLOWCONTROLLER_ATTR = ATTR_PREFIX + "flowController";
private static final String VIEW_RENDERER_ATTR = ATTR_PREFIX + "viewRenderer";
+ private static final String PREVIOUS_PAGE_INFO_ATTR = ATTR_PREFIX + "prevPageInfo";
public static boolean isForwardedRequest( ServletRequest request )
@@ -129,5 +131,17 @@
public static void setViewRenderer( ServletRequest request, ViewRenderer viewRenderer )
{
request.setAttribute( VIEW_RENDERER_ATTR, viewRenderer );
+ }
+
+ public static PreviousPageInfo getPreviousPageInfo( ServletRequest request, boolean remove )
+ {
+ PreviousPageInfo prevPageInfo = ( PreviousPageInfo ) request.getAttribute( PREVIOUS_PAGE_INFO_ATTR );
+ if ( prevPageInfo != null && remove ) request.removeAttribute( PREVIOUS_PAGE_INFO_ATTR );
+ return prevPageInfo;
+ }
+
+ public static void setPreviousPageInfo( ServletRequest request, PreviousPageInfo previousPageInfo )
+ {
+ request.setAttribute( PREVIOUS_PAGE_INFO_ATTR, previousPageInfo );
}
}
Deleted: /incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/miniTests/updateFormFromNestedPopup/ttt
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/miniTests/updateFormFromNestedPopup/ttt?view=auto&rev=125907
==============================================================================
Modified: incubator/beehive/trunk/netui/test/webapps/jsf/build.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/build.xml?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/test/webapps/jsf/build.xml&r1=125907&p2=incubator/beehive/trunk/netui/test/webapps/jsf/build.xml&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/jsf/build.xml (original)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/build.xml Fri Jan 21 01:06:52 2005
@@ -11,6 +11,7 @@
<property name="testRecorder.config.name" value="netui-server-jsf-config"/>
<property name="server.root.url" value="http://localhost:8080"/>
<property name="webapp.waitfor.url" value="${server.root.url}/${webapp.name}"/>
+ <property name="webapp.dir" location="${app.dir}/jsf/${webapp.name}"/>
<!-- ================================================================ -->
<!-- -->
@@ -18,9 +19,31 @@
<!-- -->
<!-- ================================================================ -->
<target name="build" description="Build webapp">
+ <echo message="--------------------------------------------------"/>
+ <echo message="| NetUI jsfWeb DRT webapp build starting |"/>
+ <echo message="--------------------------------------------------"/>
+
<fail unless="os.JSF_HOME" message="JSF_HOME must point to the JavaServer Faces 1.1 Reference Implementation distribution."/>
- <property name="webapp.dir" location="${app.dir}/jsf/${webapp.name}"/>
+ <!-- the default version of Struts for the DRTs. To override, pass -Dstruts.version=1.1 on the command line -->
+ <property name="struts.version" value="1.2"/>
+
+ <echo>struts.version: ${struts.version}</echo>
+
+ <ant antfile="${test.dir}/ant/buildWebapp.xml" target="deploy.netui" inheritAll="false">
+ <property name="webapp.dir" location="${webapp.dir}"/>
+ <property name="include.testrecorder" value="true"/>
+ <property name="testRecorder.config.name" value="${testRecorder.config.name}"/>
+ <property name="test.file" location="${app.dir}/jsf/testRecorder/config/testRecorder-tests.xml"/>
+ <property name="config.file" location="${app.dir}/jsf/testRecorder/config/testRecorder-config.xml"/>
+ <property name="webapp.file" location="${app.dir}/jsf/testRecorder/config/testRecorder-webapp.xml"/>
+ <property name="struts.version" value="${struts.version}"/>
+ </ant>
+
+ <copy file="${webapp.dir}/WEB-INF/local-netui-config.xml"
+ tofile="${webapp.dir}/WEB-INF/${netuiconfig.xml.name}"
+ overwrite="true" failonerror="false"/>
+
<property name="webinf.dir" value="${webapp.dir}/WEB-INF"/>
<copy todir="${webinf.dir}/lib" overwrite="true" failonerror="true">
<fileset dir="${os.JSF_HOME}/lib">
@@ -33,25 +56,20 @@
</fileset>
</copy>
- <ant antfile="${test.dir}/ant/buildWebapp.xml" target="deploy.netui" inheritAll="false">
- <property name="webapp.dir" location="${app.dir}/jsf/${webapp.name}"/>
- <property name="include.testrecorder" value="true"/>
- <property name="testRecorder.config.name" value="${testRecorder.config.name}"/>
- <property name="test.file" location="${app.dir}/jsf/testRecorder/config/testRecorder-tests.xml"/>
- <property name="config.file" location="${app.dir}/jsf/testRecorder/config/testRecorder-config.xml"/>
- <property name="webapp.file" location="${app.dir}/jsf/testRecorder/config/testRecorder-webapp.xml"/>
- </ant>
+ <build-webapp webappDir="${webapp.dir}"/>
+
+ <echo message="--------------------------------------------------"/>
+ <echo message="| NetUI jsfWeb DRT webapp build ending |"/>
+ <echo message="--------------------------------------------------"/>
- <ant antfile="${buildWebapp.ant}" target="build.webapp" inheritAll="false">
- <property name="webapp.dir" location="${app.dir}/jsf/${webapp.name}"/>
- </ant>
</target>
<target name="clean" description="Clean webapp">
<ant antfile="${test.dir}/ant/buildWebapp.xml" target="undeploy.netui" inheritAll="false">
- <property name="webapp.dir" location="${app.dir}/jsf/${webapp.name}"/>
+ <property name="webapp.dir" location="${webapp.dir}"/>
<property name="include.testrecorder" value="true"/>
</ant>
+ <clean-webapp webappDir="${webapp.dir}"/>
</target>
<!-- ================================================================ -->
@@ -92,22 +110,15 @@
<!-- -->
<!-- ================================================================ -->
<target name="deploy" description="Deploy webapp">
- <ant antfile="${buildWebapp.ant}" target="deploy" inheritAll="false">
- <property name="context.path" value="${webapp.name}"/>
- <property name="webapp.dir" value="${app.dir}/jsf/${webapp.name}"/>
- </ant>
+ <deploy-webapp webappDir="${webapp.dir}" contextPath="${webapp.name}"/>
</target>
<target name="undeploy" description="Undeploy webapp">
- <ant antfile="${buildWebapp.ant}" target="undeploy" inheritAll="false">
- <property name="context.path" value="${webapp.name}"/>
- </ant>
+ <undeploy-webapp contextPath="${webapp.name}"/>
</target>
<target name="redeploy" description="Redeploy webapp">
- <ant antfile="${buildWebapp.ant}" target="redeploy" inheritAll="false">
- <property name="context.path" value="${webapp.name}"/>
- </ant>
+ <redeploy-webapp contextPath="${webapp.name}"/>
</target>
<!-- ================================================================ -->
@@ -116,11 +127,19 @@
<!-- -->
<!-- ================================================================ -->
<target name="start" description="Start server">
- <ant antfile="${buildWebapp.ant}" target="start" inheritAll="false"/>
+ <start-server shmem="false" javaOptions="-ea:org.apache.beehive.netui..."/>
+ </target>
+
+ <target name="start.without.asserts" description="Start server without assertions enabled">
+ <start-server shmem="false" javaOptions=""/>
+ </target>
+
+ <target name="start.with.shmem" description="Start server with shared memory debugging enabled">
+ <start-server shmem="true" javaOptions="-ea:org.apache.beehive.netui..."/>
</target>
<target name="stop" description="Stop server">
- <ant antfile="${buildWebapp.ant}" target="stop" inheritAll="false"/>
+ <stop-server/>
</target>
<target name="usage">
Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/Controller.jpf
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/Controller.jpf?view=auto&rev=125908
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/Controller.jpf Fri Jan 21 01:06:52 2005
@@ -0,0 +1,16 @@
+package restorePreviousPage;
+
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.Controller(
+ simpleActions={
+ @Jpf.SimpleAction(name="begin", path="page1.faces"),
+ @Jpf.SimpleAction(name="go2", path="page2.faces"),
+ @Jpf.SimpleAction(name="goCur", navigateTo=Jpf.NavigateTo.currentPage),
+ @Jpf.SimpleAction(name="goPrev", navigateTo=Jpf.NavigateTo.previousPage)
+ }
+)
+public class Controller extends PageFlowController
+{
+}
Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsfb
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsfb?view=auto&rev=125908
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsfb Fri Jan 21 01:06:52 2005
@@ -0,0 +1,9 @@
+package restorePreviousPage;
+
+import org.apache.beehive.netui.pageflow.FacesBackingBean;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.FacesBacking
+public class page1 extends FacesBackingBean
+{
+}
Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsp
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsp?view=auto&rev=125908
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page1.jsp Fri Jan 21 01:06:52 2005
@@ -0,0 +1,24 @@
+<%@ 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>
+ text: <h:inputText />
+ <br/>
+ <h:commandLink action="goCur" value="stay here, using navigateTo (state is restored)" />
+ <br/>
+ <h:commandLink action="begin" value="stay here, using a path (state is not restored)" />
+ <br/>
+ <h:commandLink action="go2" value="go to page 2" />
+ </h:form>
+ </f:view>
+ </body>
+</html>
+
+
Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsfb
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsfb?view=auto&rev=125908
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsfb Fri Jan 21 01:06:52 2005
@@ -0,0 +1,9 @@
+package restorePreviousPage;
+
+import org.apache.beehive.netui.pageflow.FacesBackingBean;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+@Jpf.FacesBacking
+public class page2 extends FacesBackingBean
+{
+}
Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsp
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsp?view=auto&rev=125908
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/restorePreviousPage/page2.jsp Fri Jan 21 01:06:52 2005
@@ -0,0 +1,20 @@
+<%@ 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>
+ <h:commandLink action="goPrev" value="go to page 1, using navigateTo (state is restored)" />
+ <br/>
+ <h:commandLink action="begin" value="go to page 1, using a path (state is not restored)" />
+ </h:form>
+ </f:view>
+ </body>
+</html>
+
+
Modified: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml&r1=125907&p2=incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml&r2=125908
==============================================================================
--- 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 Fri Jan 21 01:06:52 2005
@@ -100,6 +100,14 @@
</categories>
</test>
<test>
+ <name>RestorePreviousPage</name>
+ <description>Test of restoring the component tree of a JSF page when returning to it through navigateTo=Jpf.NavigateTo.currentPage or navigateTo=Jpf.NavigateTo.previousPage.</description>
+ <webapp>jsfWeb</webapp>
+ <categories>
+ <category>drt</category>
+ </categories>
+ </test>
+ <test>
<name>SubmitFormBean</name>
<description>Test of sending a form bean to a Page Flow action in two ways: (1) through the "submitFormBean" attribute (f:attribute tag) inside of h:commandLink or h:commandButton, or (2) through an 'outputFormBean' attribute on @Jpf.RaiseAction in a backing file command handler.</description>
<webapp>jsfWeb</webapp>
Modified: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml&r1=125907&p2=incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml (original)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/BindingInFaces.xml Fri Jan 21 01:06:52 2005
@@ -432,7 +432,7 @@
<ses:response>
<ses:statusCode>200</ses:statusCode>
<ses:reason/>
- <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<html lang="en">
Added: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/RestorePreviousPage.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/RestorePreviousPage.xml?view=auto&rev=125908
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/RestorePreviousPage.xml Fri Jan 21 01:06:52 2005
@@ -0,0 +1,719 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+ <ses:sessionName>RestorePreviousPage</ses:sessionName>
+ <ses:tester>rich</ses:tester>
+ <ses:startDate>21 Jan 2005, 12:38:47.857 AM MST</ses:startDate>
+ <ses:description>Test of restoring the component tree of a JSF page when returning to it through navigateTo=Jpf.NavigateTo.currentPage or navigateTo=Jpf.NavigateTo.previousPage.</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/restorePreviousPage/Controller.jpf</ses:uri>
+ <ses:method>GET</ses:method>
+ <ses:parameters/>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page1.faces" enctype="application/x-www-form-urlencoded">
+
+ text: <input type="text" name="_id0:_id1" />
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">stay here, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id3'; document.forms['_id0'].submit(); return false;">stay here, using a path (state is not restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id4'; document.forms['_id0'].submit(); return false;">go to page 2</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>2</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+ <ses:uri>/jsfWeb/restorePreviousPage/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:_id1</ses:name>
+ <ses:value>aaa</ses:value>
+ </ses:parameter>
+ <ses:parameter>
+ <ses:name>_id0:_idcl</ses:name>
+ <ses:value>_id0:_id2</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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>50</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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/restorePreviousPage/Controller.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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page1.faces" enctype="application/x-www-form-urlencoded">
+
+ text: <input type="text" name="_id0:_id1" value="aaa" />
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">stay here, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id3'; document.forms['_id0'].submit(); return false;">stay here, using a path (state is not restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id4'; document.forms['_id0'].submit(); return false;">go to page 2</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>3</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+ <ses:uri>/jsfWeb/restorePreviousPage/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:_id1</ses:name>
+ <ses:value>aaa</ses:value>
+ </ses:parameter>
+ <ses:parameter>
+ <ses:name>_id0:_idcl</ses:name>
+ <ses:value>_id0:_id3</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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>50</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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/restorePreviousPage/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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><![CDATA[<html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page1.faces" enctype="application/x-www-form-urlencoded">
+
+ text: <input type="text" name="_id0:_id1" />
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">stay here, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id3'; document.forms['_id0'].submit(); return false;">stay here, using a path (state is not restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id4'; document.forms['_id0'].submit(); return false;">go to page 2</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html>]]></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>4</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+ <ses:uri>/jsfWeb/restorePreviousPage/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:_id1</ses:name>
+ <ses:value>bbb</ses:value>
+ </ses:parameter>
+ <ses:parameter>
+ <ses:name>_id0:_idcl</ses:name>
+ <ses:value>_id0:_id4</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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>50</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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/restorePreviousPage/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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><![CDATA[<html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page2.faces" enctype="application/x-www-form-urlencoded">
+
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id1'; document.forms['_id0'].submit(); return false;">go to page 1, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">go to page 1, using a path (state is not restored)</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html>]]></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>5</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+ <ses:uri>/jsfWeb/restorePreviousPage/page2.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:_idcl</ses:name>
+ <ses:value>_id0:_id1</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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>34</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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/restorePreviousPage/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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page1.faces" enctype="application/x-www-form-urlencoded">
+
+ text: <input type="text" name="_id0:_id1" value="bbb" />
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">stay here, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id3'; document.forms['_id0'].submit(); return false;">stay here, using a path (state is not restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id4'; document.forms['_id0'].submit(); return false;">go to page 2</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>6</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+ <ses:uri>/jsfWeb/restorePreviousPage/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:_id1</ses:name>
+ <ses:value>bbb</ses:value>
+ </ses:parameter>
+ <ses:parameter>
+ <ses:name>_id0:_idcl</ses:name>
+ <ses:value>_id0:_id4</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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>50</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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/restorePreviousPage/page2.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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><![CDATA[<html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page2.faces" enctype="application/x-www-form-urlencoded">
+
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id1'; document.forms['_id0'].submit(); return false;">go to page 1, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">go to page 1, using a path (state is not restored)</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html>]]></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>7</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+ <ses:uri>/jsfWeb/restorePreviousPage/page2.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:_idcl</ses:name>
+ <ses:value>_id0:_id2</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>4FD044880B77E1568A5788C75F6A0F39</ses:value>
+ </ses:cookie>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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>34</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=4FD044880B77E1568A5788C75F6A0F39; JSESSIONID=BwmY1HFuTLhGyseDiif5PhX12qMBT2dt0TngWV4oVAiyCvFSEGDg!-1460366940</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/restorePreviousPage/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.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><![CDATA[<html>
+ <head>
+ </head>
+ <body>
+
+ <form id="_id0" method="post" action="/jsfWeb/restorePreviousPage/page1.faces" enctype="application/x-www-form-urlencoded">
+
+ text: <input type="text" name="_id0:_id1" />
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id2'; document.forms['_id0'].submit(); return false;">stay here, using navigateTo (state is restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id3'; document.forms['_id0'].submit(); return false;">stay here, using a path (state is not restored)</a>
+ <br/>
+ <a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id4'; document.forms['_id0'].submit(); return false;">go to page 2</a>
+ <input type="hidden" name="_id0" value="_id0" /><input type="hidden" name="_id0:_idcl" /></form>
+
+ </body>
+</html>]]></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ </ses:tests>
+ <ses:endDate>21 Jan 2005, 12:39:04.812 AM MST</ses:endDate>
+ <ses:testCount>7</ses:testCount>
+</ses:recorderSession>
Modified: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml?view=diff&rev=125908&p1=incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml&r1=125907&p2=incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml&r2=125908
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml (original)
+++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests/SubmitFormBean.xml Fri Jan 21 01:06:52 2005
@@ -190,7 +190,7 @@
<ses:response>
<ses:statusCode>200</ses:statusCode>
<ses:reason/>
- <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<html lang="en">
@@ -395,7 +395,7 @@
<ses:response>
<ses:statusCode>200</ses:statusCode>
<ses:reason/>
- <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<html lang="en">
@@ -596,7 +596,7 @@
<ses:response>
<ses:statusCode>200</ses:statusCode>
<ses:reason/>
- <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<html lang="en">
@@ -797,7 +797,7 @@
<ses:response>
<ses:statusCode>200</ses:statusCode>
<ses:reason/>
- <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
>
<html lang="en">
Added: incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/Beehive.gif
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/Beehive.gif?view=auto&rev=125908
==============================================================================
Binary file. No diff available.
Added: incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/linkDown.gif
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/linkDown.gif?view=auto&rev=125908
==============================================================================
Binary file. No diff available.
Added: incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/linkOver.gif
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/urlTemplates/urlTemplates/index/linkOver.gif?view=auto&rev=125908
==============================================================================
Binary file. No diff available.