Author: rich Date: Tue Jun 21 15:29:35 2005 New Revision: 191736 URL: http://svn.apache.org/viewcvs?rev=191736&view=rev Log: Fix for http://issues.apache.org/jira/browse/BEEHIVE-827 : FacesMessages unavailable in JSF
To fix this, I've moved the creation of JSF backing beans inside the JSF request (where before it was happening immediately before the JSF request. tests: bvt in netui, bvt.jsf-ri and bvt.myfaces in netui/test/webapps/jsf (WinXP) BB: self (linux) Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/Controller.jpf (with props) incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsfb (with props) incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsp (with props) incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsfb (with props) incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsp (with props) incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-jsf-ri/OnCreate.xml (with props) incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-myfaces/OnCreate.xml (with props) Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowRequestProcessor.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/JavaControlUtils.java incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/config/testRecorder-tests.xml Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowRequestProcessor.java URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowRequestProcessor.java?rev=191736&r1=191735&r2=191736&view=diff ============================================================================== --- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowRequestProcessor.java (original) +++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/PageFlowRequestProcessor.java Tue Jun 21 15:29:35 2005 @@ -585,6 +585,12 @@ PageFlowController jpf = PageFlowUtils.getCurrentPageFlow( request ); // + // Remove any current JavaServer Faces backing bean. We have "left" any JSF page and are now processing a + // Page Flow action. + // + InternalUtils.removeCurrentFacesBackingBean( request, servletContext ); + + // // Set up implicit objects used by the expression language in simple actions and in declarative validation. // ImplicitObjectUtil.loadImplicitObjects( request, response, servletContext, jpf ); 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?rev=191736&r1=191735&r2=191736&view=diff ============================================================================== --- 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 Tue Jun 21 15:29:35 2005 @@ -21,15 +21,23 @@ import org.apache.beehive.netui.pageflow.PageFlowController; import org.apache.beehive.netui.pageflow.PreviousPageInfo; import org.apache.beehive.netui.pageflow.FacesBackingBean; +import org.apache.beehive.netui.pageflow.FacesBackingBeanFactory; +import org.apache.beehive.netui.pageflow.RequestContext; import org.apache.beehive.netui.pageflow.internal.PageFlowRequestWrapper; import org.apache.beehive.netui.pageflow.internal.InternalUtils; import org.apache.beehive.netui.util.internal.FileUtils; +import org.apache.beehive.netui.script.common.ImplicitObjectUtil; import javax.faces.application.ViewHandler; import javax.faces.context.FacesContext; +import javax.faces.context.ExternalContext; import javax.faces.component.UIViewRoot; import javax.faces.FacesException; import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.ServletContext; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; import java.util.Locale; import java.io.IOException; import java.io.Serializable; @@ -92,17 +100,36 @@ } } + private static void setBackingBean( ServletRequest request, ServletResponse response, ServletContext servletContext ) + { + if ( request instanceof HttpServletRequest ) + { + FacesBackingBeanFactory factory = FacesBackingBeanFactory.get( servletContext ); + FacesBackingBean fbb = factory.getFacesBackingBeanForRequest( new RequestContext( request, response ) ); + + if ( fbb != null ) + { + ImplicitObjectUtil.loadFacesBackingBean( request, fbb ); + } + else + { + ImplicitObjectUtil.unloadFacesBackingBean( request ); + } + } + } + public UIViewRoot createView(FacesContext context, String viewId) { - Object request = context.getExternalContext().getRequest(); + ExternalContext externalContext = context.getExternalContext(); + Object request = externalContext.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 ) { + // + // 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. + // httpRequest = ( HttpServletRequest ) request; PageFlowRequestWrapper rw = PageFlowRequestWrapper.unwrap( httpRequest ); @@ -122,6 +149,13 @@ } } } + + // + // Create/restore the backing bean that corresponds to this request. + // + HttpServletResponse response = ( HttpServletResponse ) externalContext.getResponse(); + ServletContext servletContext = ( ServletContext ) externalContext.getContext(); + setBackingBean( httpRequest, response, servletContext ); } UIViewRoot viewRoot = _delegate.createView( context, viewId ); @@ -142,6 +176,15 @@ public void renderView(FacesContext context, UIViewRoot viewToRender) throws IOException, FacesException { + // + // Create/restore the backing bean that corresponds to this request. + // + ExternalContext externalContext = context.getExternalContext(); + HttpServletRequest request = ( HttpServletRequest ) externalContext.getRequest(); + HttpServletResponse response = ( HttpServletResponse ) externalContext.getResponse(); + ServletContext servletContext = ( ServletContext ) externalContext.getContext(); + setBackingBean( request, response, servletContext ); + _delegate.renderView( context, viewToRender ); } @@ -151,7 +194,8 @@ */ public UIViewRoot restoreView(FacesContext context, String viewId) { - Object request = context.getExternalContext().getRequest(); + ExternalContext externalContext = context.getExternalContext(); + Object request = externalContext.getRequest(); HttpServletRequest httpRequest = null; if ( request instanceof HttpServletRequest ) @@ -165,6 +209,14 @@ { return null; } + + // + // Create/restore the backing bean that corresponds to this request. + // + HttpServletResponse response = ( HttpServletResponse ) externalContext.getResponse(); + ServletContext servletContext = ( ServletContext ) externalContext.getContext(); + setBackingBean( httpRequest, response, servletContext ); + } UIViewRoot viewRoot = _delegate.restoreView( context, viewId ); Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/JavaControlUtils.java URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/JavaControlUtils.java?rev=191736&r1=191735&r2=191736&view=diff ============================================================================== --- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/JavaControlUtils.java (original) +++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/JavaControlUtils.java Tue Jun 21 15:29:35 2005 @@ -219,6 +219,12 @@ throws ControlFieldInitializationException { Class controlClientClass = controlClient.getClass(); + + // + // First, just return if there are no annotated Control fields. This saves us from having to catch a + // (wrapped) ClassNotFoundException for the control client initializer if we were to simply call + // Controls.initializeClient(). + // Map controlFields = getAccessibleControlFieldAnnotations( controlClientClass, servletContext ); if ( controlFields.isEmpty() ) return; Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/script/common/ImplicitObjectUtil.java?rev=191736&r1=191735&r2=191736&view=diff ============================================================================== --- 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 Tue Jun 21 15:29:35 2005 @@ -66,16 +66,23 @@ jspContext.removeAttribute(ACTION_FORM_IMPLICIT_OBJECT_KEY); } - public static final void loadPageFlow(ServletRequest request, PageFlowController pageFlow, FacesBackingBean fbb) { + public static final void loadPageFlow(ServletRequest request, PageFlowController pageFlow) { if(pageFlow != null) request.setAttribute(PAGE_FLOW_IMPLICIT_OBJECT_KEY, pageFlow); - if(fbb != null) - request.setAttribute(BACKING_IMPLICIT_OBJECT_KEY, fbb); Map map = InternalUtils.getPageInputMap(request); request.setAttribute(PAGE_INPUT_IMPLICIT_OBJECT_KEY, map != null ? map : Collections.EMPTY_MAP); } + public static final void loadFacesBackingBean(ServletRequest request, FacesBackingBean fbb) { + if(fbb != null) + request.setAttribute(BACKING_IMPLICIT_OBJECT_KEY, fbb); + } + + public static final void unloadFacesBackingBean(ServletRequest request) { + request.removeAttribute(BACKING_IMPLICIT_OBJECT_KEY); + } + public static final void loadSharedFlow(ServletRequest request, Map/*<String, SharedFlowController>*/ sharedFlows) { if(sharedFlows != null) request.setAttribute(SHARED_FLOW_IMPLICIT_OBJECT_KEY, sharedFlows); @@ -158,9 +165,7 @@ public static final void loadImplicitObjects(HttpServletRequest request, HttpServletResponse response, ServletContext servletContext, PageFlowController curJpf) { // @todo: need to wrap this in checks for JSP 1.2 // @todo: feature: need to add support for chaining in user-code to run when setting implicit objects on the request - FacesBackingBean fbb = - FacesBackingBeanFactory.get(servletContext).getFacesBackingBeanForRequest(new RequestContext(request, response)); - loadPageFlow(request, curJpf, fbb); + loadPageFlow(request, curJpf); // @todo: need to move bundleMap creation to a BundleMapFactory BundleMap bundleMap = new BundleMap(request, servletContext); Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/Controller.jpf URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/Controller.jpf?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/Controller.jpf (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/Controller.jpf Tue Jun 21 15:29:35 2005 @@ -0,0 +1,29 @@ +package onCreate; + +import org.apache.beehive.netui.pageflow.PageFlowController; +import org.apache.beehive.netui.pageflow.Forward; +import org.apache.beehive.netui.pageflow.annotations.Jpf; + [EMAIL PROTECTED]( + simpleActions={ + @Jpf.SimpleAction(name="begin", path="page1.faces") + } +) +public class Controller extends PageFlowController +{ + @Jpf.Action( + forwards={ + @Jpf.Forward( + name="success", + path="page2.faces", + actionOutputs={ + @Jpf.ActionOutput(name="foo", type=String.class, required=true) + } + ) + } + ) + public Forward go2() + { + return new Forward("success", "foo", "Got the action output."); + } +} Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/Controller.jpf ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsfb URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsfb?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsfb (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsfb Tue Jun 21 15:29:35 2005 @@ -0,0 +1,21 @@ +package onCreate; + +import org.apache.beehive.netui.pageflow.FacesBackingBean; +import org.apache.beehive.netui.pageflow.annotations.Jpf; +import javax.faces.context.FacesContext; +import javax.faces.application.FacesMessage; + [EMAIL PROTECTED] +public class page1 extends FacesBackingBean +{ + protected void onCreate() + { + String msg = "This message was added during " + getClass().getName() + ".onCreate()."; + FacesContext.getCurrentInstance().addMessage("foo",new FacesMessage(msg)); + } + + public String getFoo() + { + return "This is a property in the backing bean."; + } +} Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsfb ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsp URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsp?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsp (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsp Tue Jun 21 15:29:35 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> + <h:panelGrid> + <h:outputText value="#{pageFlow.URI}" style="font-weight: bold"/> + <h:outputText value="Messages:"/> + <h:messages/> + <h:outputText value="#{backing.foo}"/> + <h:commandLink action="go2" value="go to page 2" /> + </h:panelGrid> + </h:form> + </f:view> + </body> +</html> + + Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page1.jsp ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsfb URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsfb?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsfb (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsfb Tue Jun 21 15:29:35 2005 @@ -0,0 +1,21 @@ +package onCreate; + +import org.apache.beehive.netui.pageflow.FacesBackingBean; +import org.apache.beehive.netui.pageflow.annotations.Jpf; +import javax.faces.context.FacesContext; +import javax.faces.application.FacesMessage; + [EMAIL PROTECTED] +public class page2 extends FacesBackingBean +{ + protected void onCreate() + { + String msg = (String) getPageInput("foo"); + FacesContext.getCurrentInstance().addMessage("foo", new FacesMessage(msg)); + } + + public String getFoo() + { + return "This is a property in the backing bean."; + } +} Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsfb ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsp URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsp?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsp (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsp Tue Jun 21 15:29:35 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> + <h:panelGrid> + <h:outputText value="#{pageFlow.URI}" style="font-weight: bold"/> + <h:outputText value="Messages:"/> + <h:messages/> + <h:outputText value="#{backing.foo}"/> + <h:commandLink action="begin" value="start over" /> + </h:panelGrid> + </h:form> + </f:view> + </body> +</html> + + Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/jsfWeb/onCreate/page2.jsp ------------------------------------------------------------------------------ svn:eol-style = native 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?rev=191736&r1=191735&r2=191736&view=diff ============================================================================== --- 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 Tue Jun 21 15:29:35 2005 @@ -103,6 +103,15 @@ </categories> </test> <test> + <name>OnCreate</name> + <description>Test to ensure that the FacesContext is available during onCreate() in a backing bean, and that the backing bean is still available to the JSF page for databinding.</description> + <webapp>jsfWeb</webapp> + <categories> + <category>drt</category> + <category>bvt</category> + </categories> + </test> + <test> <name>RestorePreviousBackingBean</name> <description>Test of restoring the backing bean of a JSF page when returning to it through navigateTo=Jpf.NavigateTo.currentPage or navigateTo=Jpf.NavigateTo.previousPage.</description> <webapp>jsfWeb</webapp> Added: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-jsf-ri/OnCreate.xml URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-jsf-ri/OnCreate.xml?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-jsf-ri/OnCreate.xml (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-jsf-ri/OnCreate.xml Tue Jun 21 15:29:35 2005 @@ -0,0 +1,457 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session"> + <ses:sessionName>OnCreate</ses:sessionName> + <ses:tester>rich</ses:tester> + <ses:startDate>21 Jun 2005, 01:54:11.246 PM MDT</ses:startDate> + <ses:description>Test to ensure that the FacesContext is available during onCreate() in a backing bean, and that the backing bean is still available to the JSF page for databinding.</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/onCreate/page1.faces</ses:uri> + <ses:method>GET</ses:method> + <ses:parameters/> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>6AF75BE91D75EFAC3F0EA8B735A8EB6B</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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=6AF75BE91D75EFAC3F0EA8B735A8EB6B; nde-textsize=16px</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.8) Gecko/20050511 Firefox/1.0.4</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/onCreate/page1.faces" enctype="application/x-www-form-urlencoded"> + + + + + + + + <table> +<tbody> +<tr> +<td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td> +</tr> +<tr> +<td>Messages:</td> +</tr> +<tr> +<td> This message was added during onCreate.page1.onCreate(). </td> +</tr> +<tr> +<td>This is a property in the backing bean.</td> +</tr> +<tr> +<td><a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id6'; document.forms['_id0'].submit(); return false;">go to page 2</a></td> +</tr> +</tbody> +</table> + + <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/onCreate/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:_idcl</ses:name> + <ses:value>_id0:_id6</ses:value> + </ses:parameter> + </ses:parameters> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>6AF75BE91D75EFAC3F0EA8B735A8EB6B</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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=6AF75BE91D75EFAC3F0EA8B735A8EB6B; nde-textsize=16px</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/onCreate/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.8) Gecko/20050511 Firefox/1.0.4</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/onCreate/page2.faces" enctype="application/x-www-form-urlencoded"> + + + + + + + + <table> +<tbody> +<tr> +<td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td> +</tr> +<tr> +<td>Messages:</td> +</tr> +<tr> +<td> Got the action output. </td> +</tr> +<tr> +<td>This is a property in the backing bean.</td> +</tr> +<tr> +<td><a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id6'; document.forms['_id0'].submit(); return false;">start over</a></td> +</tr> +</tbody> +</table> + + <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/onCreate/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:_id6</ses:value> + </ses:parameter> + </ses:parameters> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>6AF75BE91D75EFAC3F0EA8B735A8EB6B</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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=6AF75BE91D75EFAC3F0EA8B735A8EB6B; nde-textsize=16px</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/onCreate/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.8) Gecko/20050511 Firefox/1.0.4</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/onCreate/page1.faces" enctype="application/x-www-form-urlencoded"> + + + + + + + + <table> +<tbody> +<tr> +<td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td> +</tr> +<tr> +<td>Messages:</td> +</tr> +<tr> +<td> This message was added during onCreate.page1.onCreate(). </td> +</tr> +<tr> +<td>This is a property in the backing bean.</td> +</tr> +<tr> +<td><a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id6'; document.forms['_id0'].submit(); return false;">go to page 2</a></td> +</tr> +</tbody> +</table> + + <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/onCreate/page1.faces</ses:uri> + <ses:method>GET</ses:method> + <ses:parameters/> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>6AF75BE91D75EFAC3F0EA8B735A8EB6B</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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=6AF75BE91D75EFAC3F0EA8B735A8EB6B; nde-textsize=16px</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.8) Gecko/20050511 Firefox/1.0.4</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/onCreate/page1.faces" enctype="application/x-www-form-urlencoded"> + + + + + + + + <table> +<tbody> +<tr> +<td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td> +</tr> +<tr> +<td>Messages:</td> +</tr> +<tr> +<td></td> +</tr> +<tr> +<td>This is a property in the backing bean.</td> +</tr> +<tr> +<td><a href="#" onclick="document.forms['_id0']['_id0:_idcl'].value='_id0:_id6'; document.forms['_id0'].submit(); return false;">go to page 2</a></td> +</tr> +</tbody> +</table> + + <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 Jun 2005, 01:54:41.690 PM MDT</ses:endDate> + <ses:testCount>4</ses:testCount> +</ses:recorderSession> Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-jsf-ri/OnCreate.xml ------------------------------------------------------------------------------ svn:eol-style = native Added: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-myfaces/OnCreate.xml URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-myfaces/OnCreate.xml?rev=191736&view=auto ============================================================================== --- incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-myfaces/OnCreate.xml (added) +++ incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-myfaces/OnCreate.xml Tue Jun 21 15:29:35 2005 @@ -0,0 +1,409 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session"> + <ses:sessionName>OnCreate</ses:sessionName> + <ses:tester>rich</ses:tester> + <ses:startDate>21 Jun 2005, 01:53:10.659 PM MDT</ses:startDate> + <ses:description>Test to ensure that the FacesContext is available during onCreate() in a backing bean, and that the backing bean is still available to the JSF page for databinding.</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/onCreate/page1.faces</ses:uri> + <ses:method>GET</ses:method> + <ses:parameters/> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>FF02870B73D6840B3126E3A3ED8A5985</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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=FF02870B73D6840B3126E3A3ED8A5985; nde-textsize=16px</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.8) Gecko/20050511 Firefox/1.0.4</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" name="_id0" method="post" action="/jsfWeb/onCreate/page1.faces" enctype="application/x-www-form-urlencoded"> + <table><tbody><tr><td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td></tr> +<tr><td>Messages:</td></tr> +<tr><td><ul><li>This message was added during onCreate.page1.onCreate().</li></ul></td></tr> +<tr><td>This is a property in the backing bean.</td></tr> +<tr><td><a href="#" onclick="clear__5Fid0();document.forms['_id0'].elements['_id0:_link_hidden_'].value='_id0:_id6';if(document.forms['_id0'].onsubmit){document.forms['_id0'].onsubmit();}document.forms['_id0'].submit();return false;" id="_id0:_id6">go to page 2</a></td></tr> +</tbody></table> + <input type="hidden" name="_id0_SUBMIT" value="1"/><input type="hidden" name="_id0:_link_hidden_"/><script type="text/javascript"> +<!-- +function clear__5Fid0() { + var f = document.forms['_id0']; + f.elements['_id0:_link_hidden_'].value=null; + f.target=''; +} +clear__5Fid0(); +//--> +</script></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/onCreate/page1.faces</ses:uri> + <ses:method>POST</ses:method> + <ses:parameters> + <ses:parameter> + <ses:name>_id0:_link_hidden_</ses:name> + <ses:value>_id0:_id6</ses:value> + </ses:parameter> + <ses:parameter> + <ses:name>_id0_SUBMIT</ses:name> + <ses:value>1</ses:value> + </ses:parameter> + </ses:parameters> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>FF02870B73D6840B3126E3A3ED8A5985</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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>46</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=FF02870B73D6840B3126E3A3ED8A5985; nde-textsize=16px</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/onCreate/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.8) Gecko/20050511 Firefox/1.0.4</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" name="_id0" method="post" action="/jsfWeb/onCreate/page2.faces" enctype="application/x-www-form-urlencoded"> + <table><tbody><tr><td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td></tr> +<tr><td>Messages:</td></tr> +<tr><td><ul><li>Got the action output.</li></ul></td></tr> +<tr><td>This is a property in the backing bean.</td></tr> +<tr><td><a href="#" onclick="clear__5Fid0();document.forms['_id0'].elements['_id0:_link_hidden_'].value='_id0:_id6';if(document.forms['_id0'].onsubmit){document.forms['_id0'].onsubmit();}document.forms['_id0'].submit();return false;" id="_id0:_id6">start over</a></td></tr> +</tbody></table> + <input type="hidden" name="_id0_SUBMIT" value="1"/><input type="hidden" name="_id0:_link_hidden_"/><script type="text/javascript"> +<!-- +function clear__5Fid0() { + var f = document.forms['_id0']; + f.elements['_id0:_link_hidden_'].value=null; + f.target=''; +} +clear__5Fid0(); +//--> +</script></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/onCreate/page2.faces</ses:uri> + <ses:method>POST</ses:method> + <ses:parameters> + <ses:parameter> + <ses:name>_id0:_link_hidden_</ses:name> + <ses:value>_id0:_id6</ses:value> + </ses:parameter> + <ses:parameter> + <ses:name>_id0_SUBMIT</ses:name> + <ses:value>1</ses:value> + </ses:parameter> + </ses:parameters> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>FF02870B73D6840B3126E3A3ED8A5985</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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>46</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=FF02870B73D6840B3126E3A3ED8A5985; nde-textsize=16px</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/onCreate/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.8) Gecko/20050511 Firefox/1.0.4</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" name="_id0" method="post" action="/jsfWeb/onCreate/page1.faces" enctype="application/x-www-form-urlencoded"> + <table><tbody><tr><td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td></tr> +<tr><td>Messages:</td></tr> +<tr><td><ul><li>This message was added during onCreate.page1.onCreate().</li></ul></td></tr> +<tr><td>This is a property in the backing bean.</td></tr> +<tr><td><a href="#" onclick="clear__5Fid0();document.forms['_id0'].elements['_id0:_link_hidden_'].value='_id0:_id6';if(document.forms['_id0'].onsubmit){document.forms['_id0'].onsubmit();}document.forms['_id0'].submit();return false;" id="_id0:_id6">go to page 2</a></td></tr> +</tbody></table> + <input type="hidden" name="_id0_SUBMIT" value="1"/><input type="hidden" name="_id0:_link_hidden_"/><script type="text/javascript"> +<!-- +function clear__5Fid0() { + var f = document.forms['_id0']; + f.elements['_id0:_link_hidden_'].value=null; + f.target=''; +} +clear__5Fid0(); +//--> +</script></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/onCreate/page1.faces</ses:uri> + <ses:method>GET</ses:method> + <ses:parameters/> + <ses:cookies> + <ses:cookie> + <ses:name>JSESSIONID</ses:name> + <ses:value>FF02870B73D6840B3126E3A3ED8A5985</ses:value> + </ses:cookie> + <ses:cookie> + <ses:name>nde-textsize</ses:name> + <ses:value>16px</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.7,ja;q=0.3</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=FF02870B73D6840B3126E3A3ED8A5985; nde-textsize=16px</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.8) Gecko/20050511 Firefox/1.0.4</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" name="_id0" method="post" action="/jsfWeb/onCreate/page1.faces" enctype="application/x-www-form-urlencoded"> + <table><tbody><tr><td><span style="font-weight: bold">/onCreate/Controller.jpf</span></td></tr> +<tr><td>Messages:</td></tr> +<tr><td></td></tr> +<tr><td>This is a property in the backing bean.</td></tr> +<tr><td><a href="#" onclick="clear__5Fid0();document.forms['_id0'].elements['_id0:_link_hidden_'].value='_id0:_id6';if(document.forms['_id0'].onsubmit){document.forms['_id0'].onsubmit();}document.forms['_id0'].submit();return false;" id="_id0:_id6">go to page 2</a></td></tr> +</tbody></table> + <input type="hidden" name="_id0_SUBMIT" value="1"/><input type="hidden" name="_id0:_link_hidden_"/><script type="text/javascript"> +<!-- +function clear__5Fid0() { + var f = document.forms['_id0']; + f.elements['_id0:_link_hidden_'].value=null; + f.target=''; +} +clear__5Fid0(); +//--> +</script></form> + + </body> +</html>]]></ses:responseBody> + </ses:response> + </ses:test> + </ses:tests> + <ses:endDate>21 Jun 2005, 01:53:25.360 PM MDT</ses:endDate> + <ses:testCount>4</ses:testCount> +</ses:recorderSession> Propchange: incubator/beehive/trunk/netui/test/webapps/jsf/testRecorder/tests-myfaces/OnCreate.xml ------------------------------------------------------------------------------ svn:eol-style = native