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/05/05 00:07:27 UTC

svn commit: r168199 - in /incubator/beehive/trunk/netui: src/compiler-core/org/apache/beehive/netui/compiler/ src/compiler-core/org/apache/beehive/netui/compiler/genmodel/ src/pageflow/org/apache/beehive/netui/pageflow/ src/pageflow/org/apache/beehive/netui/pageflow/internal/ src/tags-html/org/apache/beehive/netui/tags/html/ src/testRecorder/org/apache/beehive/netui/tools/testrecorder/shared/xmlbeans/ test/webapps/drt/coreWeb/coretags/error/nullbinding/ test/webapps/drt/coreWeb/validation/validateStrutsActionForm/ test/webapps/drt/testRecorder/config/ test/webapps/drt/testRecorder/tests/

Author: rich
Date: Wed May  4 15:07:26 2005
New Revision: 168199

URL: http://svn.apache.org/viewcvs?rev=168199&view=rev
Log:
Fix for http://issues.apache.org/jira/browse/BEEHIVE-601 : Validation annotations do not work on a form bean that extends Struts ActionForm (and not FormData)

Also, removed the old "bundle" attribute on the netui:error/netui:errors tags.  It was a replaced a long time ago with "bundleName".

tests: bvt in netui (WinXP)
BB: self (linux)


Added:
    incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/
    incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/Controller.jpf   (with props)
    incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/index.jsp   (with props)
    incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/ValidateStrutsActionForm.xml   (with props)
Modified:
    incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/CompilerUtils.java
    incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java
    incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java
    incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/JpfLanguageConstants.java
    incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenActionModel.java
    incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenStrutsApp.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/internal/InternalUtils.java
    incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ErrorBaseTag.java
    incubator/beehive/trunk/netui/src/testRecorder/org/apache/beehive/netui/tools/testrecorder/shared/xmlbeans/XMLHelper.java
    incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/coretags/error/nullbinding/index.jsp
    incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml

Modified: incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/CompilerUtils.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/CompilerUtils.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/CompilerUtils.java (original)
+++ incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/CompilerUtils.java Wed May  4 15:07:26 2005
@@ -548,7 +548,7 @@
      */
     public static String getFormClassName( TypeDeclaration jclass, AnnotationProcessorEnvironment env )
     {
-        if ( isAssignableFrom( FORM_CLASS_NAME, jclass, env ) )
+        if ( isAssignableFrom( PAGEFLOW_FORM_CLASS_NAME, jclass, env ) )
         {
             return getLoadableName( jclass );
         }

Modified: incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java (original)
+++ incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FlowControllerChecker.java Wed May  4 15:07:26 2005
@@ -574,7 +574,7 @@
             // The use of org.apache.struts.action.ActionForm or org.apache.beehive.netui.pageflow.FormData as the
             // fourth argument is deprecated.  Forms can be any Object type now.
             //
-            if ( CompilerUtils.isAssignableFrom( FORM_CLASS_NAME, parameters[3].getType(), getEnv() ) )
+            if ( CompilerUtils.isAssignableFrom( STRUTS_FORM_CLASS_NAME, parameters[3].getType(), getEnv() ) )
             {
                 getDiagnostics().addWarning( method, "warning.exception-method-deprecated-form-arg" );
             }

Modified: incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java (original)
+++ incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/FormBeanChecker.java Wed May  4 15:07:26 2005
@@ -75,7 +75,7 @@
         // Make sure ActionForm subclasses are public static, and that they have default
         // constructors.
         //
-        if ( isFormBeanClass || CompilerUtils.isAssignableFrom( FORM_CLASS_NAME, jclass, getEnv() ) )
+        if ( isFormBeanClass || CompilerUtils.isAssignableFrom( STRUTS_FORM_CLASS_NAME, jclass, getEnv() ) )
         {
             if ( jclass.getDeclaringType() != null && ! jclass.hasModifier( Modifier.STATIC ) )
             {

Modified: incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/JpfLanguageConstants.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/JpfLanguageConstants.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/JpfLanguageConstants.java (original)
+++ incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/JpfLanguageConstants.java Wed May  4 15:07:26 2005
@@ -189,7 +189,8 @@
     
     public static final String STRUTS_PACKAGE = "org.apache.struts";
     public static final String FORWARD_CLASS_NAME = PAGEFLOW_PACKAGE + ".Forward";
-    public static final String FORM_CLASS_NAME = STRUTS_PACKAGE + ".action.ActionForm";
+    public static final String STRUTS_FORM_CLASS_NAME = STRUTS_PACKAGE + ".action.ActionForm";
+    public static final String PAGEFLOW_FORM_CLASS_NAME = PAGEFLOW_PACKAGE + ".FormData";
     public static final String BEA_XMLOBJECT_CLASS_NAME = "com.bea.xml.XmlObject";
     public static final String APACHE_XMLOBJECT_CLASS_NAME = "org.apache.xmlbeans.XmlObject";
     public static final String XML_FORM_CLASS_NAME = PAGEFLOW_PACKAGE + ".internal.XmlBeanActionForm";

Modified: incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenActionModel.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenActionModel.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenActionModel.java (original)
+++ incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenActionModel.java Wed May  4 15:07:26 2005
@@ -208,7 +208,7 @@
         //
         // If this isn't an ActionForm-derived argument, keep track of the classname for the runtime.
         //
-        if ( ! CompilerUtils.isAssignableFrom( FORM_CLASS_NAME, decl, parentApp.getEnv() ) )
+        if ( ! CompilerUtils.isAssignableFrom( PAGEFLOW_FORM_CLASS_NAME, decl, parentApp.getEnv() ) )
         {
             setFormClass( CompilerUtils.getLoadableName( decl ) );
         }

Modified: incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenStrutsApp.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenStrutsApp.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenStrutsApp.java (original)
+++ incubator/beehive/trunk/netui/src/compiler-core/org/apache/beehive/netui/compiler/genmodel/GenStrutsApp.java Wed May  4 15:07:26 2005
@@ -138,7 +138,7 @@
                 ClassDeclaration innerClass = ( ClassDeclaration ) innerType;
                 
                 if ( innerType.hasModifier( Modifier.PUBLIC ) 
-                     && CompilerUtils.isAssignableFrom( FORM_CLASS_NAME, innerClass, _env ) )
+                     && CompilerUtils.isAssignableFrom( PAGEFLOW_FORM_CLASS_NAME, innerClass, _env ) )
                 {
                     addFormBean( innerClass, null );
                 }

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?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- 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 Wed May  4 15:07:26 2005
@@ -372,7 +372,8 @@
      * Get the submitted form bean from the most recent action execution in this PageFlowController.
      * <p>
      * <i>Note: if the current page flow does not contain a </i>{@link org.apache.beehive.netui.pageflow.annotations.Jpf.Forward}<i> or a
-     * </i>{@link org.apache.beehive.netui.pageflow.annotations.Jpf.SimpleAction}<i> with a </i><code>navigateTo={@link org.apache.beehive.netui.pageflow.annotations.Jpf.NavigateTo#previousAction}</code><i>
+     * </i>{@link org.apache.beehive.netui.pageflow.annotations.Jpf.SimpleAction}<i> with a
+     * </i><code>navigateTo={@link org.apache.beehive.netui.pageflow.annotations.Jpf.NavigateTo#previousAction}</code><i>
      * attribute, then this method will always return </i><code>null</code><i> by default.  To enable it in this
      * situation, add the following method to the page flow:</i><br>
      * <blockquote>

Modified: incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java (original)
+++ incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/internal/InternalUtils.java Wed May  4 15:07:26 2005
@@ -175,7 +175,11 @@
     {
         if ( formBean == null ) return null;
         
-        if ( formBean instanceof ActionForm )
+        //
+        // Notice that we even wrap form beans that extend ActionForm but don't extend FormData.  This is because
+        // FormData has special logic to make validation annotations work correctly.
+        //
+        if ( formBean instanceof FormData )
         {
             return ( ActionForm ) formBean;
         }

Modified: incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ErrorBaseTag.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ErrorBaseTag.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ErrorBaseTag.java (original)
+++ incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ErrorBaseTag.java Wed May  4 15:07:26 2005
@@ -70,21 +70,6 @@
      * Set the name of the message bundle, as defined in the page flow's
      * {@link org.apache.beehive.netui.pageflow.annotations.Jpf.MessageBundle} annotation, where the error messages
      * can be found. If this attribute is not set, the page flow's default message bundle is used.
-     * @param bundle - the bundle name
-     * @netui:attribute required="false"  rtexprvalue="true"
-     * description="The name of the message bundle, as defined in the page flow's Jpf.MessageBundle annotation."
-     * @deprecated Use {@link #setBundleName} instead.
-     */
-    public final void setBundle(String bundle)
-            throws JspException
-    {
-        setBundleName(bundle);
-    }
-
-    /**
-     * Set the name of the message bundle, as defined in the page flow's
-     * {@link org.apache.beehive.netui.pageflow.annotations.Jpf.MessageBundle} annotation, where the error messages
-     * can be found. If this attribute is not set, the page flow's default message bundle is used.
      * @param bundleName - the bundle name
      * @netui:attribute required="false"  rtexprvalue="true"
      * description="The name of the message bundle, as defined in the page flow's Jpf.MessageBundle annotation."

Modified: incubator/beehive/trunk/netui/src/testRecorder/org/apache/beehive/netui/tools/testrecorder/shared/xmlbeans/XMLHelper.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/testRecorder/org/apache/beehive/netui/tools/testrecorder/shared/xmlbeans/XMLHelper.java?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/testRecorder/org/apache/beehive/netui/tools/testrecorder/shared/xmlbeans/XMLHelper.java (original)
+++ incubator/beehive/trunk/netui/src/testRecorder/org/apache/beehive/netui/tools/testrecorder/shared/xmlbeans/XMLHelper.java Wed May  4 15:07:26 2005
@@ -64,13 +64,22 @@
     public static ServerDefinition getServerDefinition( InputStream is, String resourceIdentifier )
             throws ConfigException, IOException {
         ServerDefinitionDocument doc = null;
+
+        StringBuffer inputStr = new StringBuffer();
         try {
+            // First read the response into a buffer; that way, we can print it on error.
+            int c;
+            while ( ( c = is.read() ) != -1 )
+            {
+                inputStr.append( ( char ) c );
+            }
+            
             XmlOptions loadOptions = new XmlOptions();
             loadOptions.setLoadLineNumbers();
-            doc = ServerDefinitionDocument.Factory.parse( is, loadOptions );
+            doc = ServerDefinitionDocument.Factory.parse( inputStr.toString(), loadOptions );
         }
         catch ( XmlException e ) {
-            log.fatal( "test recorder parse exception", e );
+            log.fatal( "test recorder parse exception while parsing this document: " + inputStr.toString(), e );
             ConfigException ex = new ConfigException( "ERROR: failed parsing test recorder server definition XML, file( " +
                     resourceIdentifier + " )", e );
             log.fatal( ex );

Modified: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/coretags/error/nullbinding/index.jsp
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/coretags/error/nullbinding/index.jsp?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/coretags/error/nullbinding/index.jsp (original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/coretags/error/nullbinding/index.jsp Wed May  4 15:07:26 2005
@@ -19,7 +19,7 @@
     <li><netui:error key="val" bundleName="${pageFlow.nullValue}" /> -- error - bundle</li>
     <li><netui:error key="${pageFlow.nullValue}" /> -- error - value</li>
     <li><netui:error key="val" locale="${pageFlow.nullValue}" /> -- error - locale</li>
-    <li><netui:errors bundle="${pageFlow.nullValue}" /> -- errors - bundle</li>
+    <li><netui:errors bundleName="${pageFlow.nullValue}" /> -- errors - bundle</li>
     <li><netui:errors locale="${pageFlow.nullValue}" /> -- errors - locale</li>
      </ul>
     </netui:body>

Added: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/Controller.jpf
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/Controller.jpf?rev=168199&view=auto
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/Controller.jpf (added)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/Controller.jpf Wed May  4 15:07:26 2005
@@ -0,0 +1,41 @@
+package validation.validateStrutsActionForm;
+
+import org.apache.beehive.netui.pageflow.*;
+import org.apache.beehive.netui.pageflow.annotations.*;
+
+@Jpf.Controller(
+    simpleActions={
+        @Jpf.SimpleAction(name="begin", path="index.jsp")
+    }
+)
+public class Controller extends PageFlowController
+{
+    @Jpf.Action(
+        forwards={
+            @Jpf.Forward(name="index", path="index.jsp")
+        },
+        validationErrorForward=@Jpf.Forward(name="failure", path="index.jsp")
+    )
+    public Forward submit( MyForm form )
+    {
+        return new Forward( "index" );
+    }
+
+    public static class MyForm extends org.apache.struts.action.ActionForm
+    {
+        private String _foo;
+
+        @Jpf.ValidatableProperty(
+            validateRequired=@Jpf.ValidateRequired(message="did validation!")
+        )
+        public String getFoo()
+        {
+            return _foo;
+        }
+
+        public void setFoo( String foo )
+        {
+            _foo = foo;
+        }
+    }
+}

Propchange: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/Controller.jpf
------------------------------------------------------------------------------
    svn:eol-style = native

Added: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/index.jsp
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/index.jsp?rev=168199&view=auto
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/index.jsp (added)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/index.jsp Wed May  4 15:07:26 2005
@@ -0,0 +1,25 @@
+<%@ page language="java" contentType="text/html;charset=UTF-8"%>
+<%@ taglib prefix="netui" uri="http://beehive.apache.org/netui/tags-html-1.0"%>
+<%@ taglib prefix="netui-data" uri="http://beehive.apache.org/netui/tags-databinding-1.0"%>
+<%@ taglib prefix="netui-template" uri="http://beehive.apache.org/netui/tags-template-1.0"%>
+
+
+<netui:html>
+    <head>
+        <netui:base/>
+    </head>
+    <netui:body>
+        <h3>${pageFlow.URI}</h3>
+
+        <netui:anchor action="begin">begin</netui:anchor>
+
+        <netui:form action="submit">
+            foo: <netui:textBox dataSource="actionForm.foo"/><netui:error key="foo"/>
+            <br/>
+            <netui:button value="submit"/>
+        </netui:form>
+    </netui:body>
+</netui:html>
+
+  
+

Propchange: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/validation/validateStrutsActionForm/index.jsp
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml?rev=168199&r1=168198&r2=168199&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml (original)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml Wed May  4 15:07:26 2005
@@ -7721,6 +7721,19 @@
          </features>
       </test>
       <test>
+         <name>ValidateStrutsActionForm</name>
+         <description>Test of validation annotations on a Struts ActionForm. </description>
+         <webapp>coreWeb</webapp>
+         <categories>
+            <category>bvt</category>
+            <category>corePageFlow</category>
+         </categories>
+         <features>
+            <feature>Form</feature>
+            <feature>Validation</feature>
+         </features>
+      </test>
+      <test>
          <name>ValidateThroughAction</name>
          <description>Test of declarative validation through annotations on action methods.</description>
          <webapp>coreWeb</webapp>

Added: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/ValidateStrutsActionForm.xml
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/ValidateStrutsActionForm.xml?rev=168199&view=auto
==============================================================================
--- incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/ValidateStrutsActionForm.xml (added)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/ValidateStrutsActionForm.xml Wed May  4 15:07:26 2005
@@ -0,0 +1,189 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+   <ses:sessionName>ValidateStrutsActionForm</ses:sessionName>
+   <ses:tester>rich</ses:tester>
+   <ses:startDate>04 May 2005, 01:45:37.961 PM MDT</ses:startDate>
+   <ses:description>Test of validation annotations on a Struts ActionForm.</ses:description>
+   <ses:tests>
+      <ses:test>
+         <ses:testNumber>1</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/validation/validateStrutsActionForm/Controller.jpf</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>43044D260E25E74CA27282E78DDFC59F</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=43044D260E25E74CA27282E78DDFC59F</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.7) Gecko/20050414 Firefox/1.0.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+
+    <head>
+        <base href="http://localhost:8080/coreWeb/validation/validateStrutsActionForm/index.jsp">
+    </head>
+    <body>
+        <h3>/validation/validateStrutsActionForm/Controller.jpf</h3>
+
+        <a href="/coreWeb/validation/validateStrutsActionForm/begin.do">begin</a>
+
+        <form action="/coreWeb/validation/validateStrutsActionForm/submit.do" method="post">
+            foo: <input type="text" name="{actionForm.foo}">
+            <br/>
+            <input type="submit" value="submit">
+        </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>/coreWeb/validation/validateStrutsActionForm/submit.do</ses:uri>
+            <ses:method>POST</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>{actionForm.foo}</ses:name>
+                  <ses:value/>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>43044D260E25E74CA27282E78DDFC59F</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>21</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=43044D260E25E74CA27282E78DDFC59F</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>host</ses:name>
+                  <ses:value>localhost:8080</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>referer</ses:name>
+                  <ses:value>http://localhost:8080/coreWeb/validation/validateStrutsActionForm/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.7) Gecko/20050414 Firefox/1.0.3</ses:value>
+               </ses:header>
+            </ses:headers>
+         </ses:request>
+         <ses:response>
+            <ses:statusCode>200</ses:statusCode>
+            <ses:reason/>
+            <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+
+    <head>
+        <base href="http://localhost:8080/coreWeb/validation/validateStrutsActionForm/index.jsp">
+    </head>
+    <body>
+        <h3>/validation/validateStrutsActionForm/Controller.jpf</h3>
+
+        <a href="/coreWeb/validation/validateStrutsActionForm/begin.do">begin</a>
+
+        <form action="/coreWeb/validation/validateStrutsActionForm/submit.do" method="post">
+            foo: <input type="text" name="{actionForm.foo}">did validation!
+
+            <br/>
+            <input type="submit" value="submit">
+        </form>
+    </body>
+
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+   </ses:tests>
+   <ses:endDate>04 May 2005, 01:45:55.416 PM MDT</ses:endDate>
+   <ses:testCount>2</ses:testCount>
+</ses:recorderSession>

Propchange: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/ValidateStrutsActionForm.xml
------------------------------------------------------------------------------
    svn:eol-style = native