You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by do...@apache.org on 2004/12/12 17:40:56 UTC

svn commit: r111657 - in incubator/beehive/trunk/netui/test/webapps/drt: coreWeb/javascript/id coreWeb/javascript/idnohtml testRecorder/config testRecorder/tests

Author: dolander
Date: Sun Dec 12 08:40:54 2004
New Revision: 111657

URL: http://svn.apache.org/viewcvs?view=rev&rev=111657
Log:
Add BVT for the id and name lookup both with and without ScriptContainer



Added:
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/Controller.jpf
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/index.jsp
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/Controller.jpf
   incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/index.jsp
   incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsid.xml
   incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsidnohtml.xml
Modified:
   incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml

Added: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/Controller.jpf
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/Controller.jpf?view=auto&rev=111657
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/Controller.jpf	Sun Dec 12 08:40:54 2004
@@ -0,0 +1,114 @@
+package javascript.id;
+
+import javax.servlet.http.HttpSession;
+import org.apache.beehive.netui.pageflow.FormData;
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+/**
+ * This is the default controller for a blank web application.
+ */
+@Jpf.Controller
+public class Controller extends PageFlowController
+{
+    private String _text;
+    public String getText() {
+        return _text;
+    }
+
+    private String _method;
+    public String getMethod() {
+        return _method;
+    }
+
+    @Jpf.Action(
+        forwards={
+           @Jpf.Forward(name="index", path="index.jsp")
+        }
+    )
+    protected Forward begin()
+    {
+        return new Forward("index");
+    }
+
+
+    /**
+     * Callback that is invoked when this controller instance is created.
+     */
+    protected void onCreate()
+    {
+    }
+
+    /**
+     * Callback that is invoked when this controller instance is destroyed.
+     */
+    protected void onDestroy(HttpSession session)
+    {
+    }
+
+        
+    @Jpf.Action(forwards = { 
+        @Jpf.Forward(name = "success",
+                     path = "index.jsp")
+    })
+    protected Forward post(Bean form)
+    {
+        Forward forward = new Forward("success");
+        _text = form.getText1();
+        _method = "post";
+        return forward;
+    }
+
+    @Jpf.Action(forwards = { 
+        @Jpf.Forward(name = "success",
+                     path = "index.jsp")
+    })
+    protected Forward override(Bean form)
+    {
+        Forward forward = new Forward("success");
+        _text = form.getText1();
+        _method = "override";
+        return forward;
+    }
+                    
+    public static class Bean extends FormData
+    {
+        private String text1;
+        private String text2;
+        
+        public String getText1()
+        {
+            return text1;
+        }
+        
+        public void setText1(String value)
+        {
+            text1 = value;
+        }
+
+        public String getText2()
+        {
+            return text2;
+        }
+        
+        public void setText2(String value)
+        {
+            text2 = value;
+        }
+    }
+}
+
+@Jpf.ViewProperties(value= {"<!-- This data is auto-generated. Hand-editing this section is not recommended. -->",
+"<view-properties>",
+"<pageflow-object id='pageflow:/coretags/imagebutton/id/Controller.jpf'/>",
+"<pageflow-object id='page:index.jsp'><property value='220' name='x'/><property value='100' name='y'/></pageflow-object>",
+"<pageflow-object id='formbean:Bean'/>",
+"<pageflow-object id='action:begin.do'><property value='80' name='x'/><property value='100' name='y'/></pageflow-object>",
+"<pageflow-object id='action:post.do#coretags.imagebutton.id.Controller.Bean'><property name='x' value='340'/><property name='y' value='100'/></pageflow-object>",
+"<pageflow-object id='forward:path#index#index.jsp#@action:begin.do@'><property value='116,140,140,164' name='elbowsX'/><property value='92,92,92,92' name='elbowsY'/><property value='East_1' name='fromPort'/><property value='West_1' name='toPort'/><property value='index' name='label'/></pageflow-object>",
+"<pageflow-object id='action-call:@page:index.jsp@#@action:post.do#coretags.imagebutton.id.Controller.Bean@'><property name='elbowsX' value='256,280,280,304'/><property name='elbowsY' value='92,92,92,92'/><property name='fromPort' value='East_1'/><property name='toPort' value='West_1'/></pageflow-object>",
+"<pageflow-object id='forward:path#success#index.jsp#@action:post.do#coretags.imagebutton.id.Controller.Bean@'><property name='elbowsX' value='304,280,280,256'/><property name='elbowsY' value='103,103,103,103'/><property name='fromPort' value='West_2'/><property name='toPort' value='East_2'/><property name='label' value='success'/></pageflow-object>",
+"</view-properties>"
+})
+interface VIEW_PROPERTIES { }

Added: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/index.jsp
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/index.jsp?view=auto&rev=111657
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/id/index.jsp	Sun Dec 12 08:40:54 2004
@@ -0,0 +1,51 @@
+<%@ 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>
+        <netui:scriptContainer>
+        <netui:form tagId="form" action="post" focus="b1">
+            <table>
+                <tr valign="top">
+                    <td>Text:</td>
+                    <td>
+                    <netui:textBox tagId="t1" dataSource="actionForm.text1" /><br>
+                    <netui:textBox tagId="t2" dataSource="actionForm.text2" />
+                    </td>
+                </tr>
+            </table>
+            <br>
+            <netui:button tagId="b1" value="Submit" />&nbsp;
+            <netui:button tagId="b2" value="Override" action="override"/>&nbsp;
+
+        </netui:form>
+        </netui:scriptContainer>
+        <hr>
+        Post Value: <netui:label value="${pageFlow.text}"/><br>
+        Method: <netui:label value="${pageFlow.method}"/>
+        <hr>
+        <p id="javaOut"></p>
+    </netui:body>
+    <script language="JavaScript" type="text/JavaScript">
+    var p = document.getElementById("javaOut");
+    var val = "<b>Document Access</b><br>";
+    val = val + "Form By Id is null: <b>" + (document.form == null) + "</b><br>";
+    val = val + "Form By Id is null: <b>" + (document["bean"] == null) + "</b><br>";
+    val = val + "<br><b>NetUI Access Methods</b><br>";
+
+    val = val + "TextBox 1 by id is null: <b>" +
+        (document.getElementById(lookupIdByTagId("t1")) == null) + "</b><br>";
+    val = val + "TextBox 1 by name is null: <b>" +
+        (document["bean"][lookupNameByTagId("t1")] == null) + "</b><br>";
+
+    p.innerHTML = val;
+    </script>
+</netui:html>
+
+  
\ No newline at end of file

Added: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/Controller.jpf
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/Controller.jpf?view=auto&rev=111657
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/Controller.jpf	Sun Dec 12 08:40:54 2004
@@ -0,0 +1,114 @@
+package javascript.idnohtml;
+
+import javax.servlet.http.HttpSession;
+import org.apache.beehive.netui.pageflow.FormData;
+import org.apache.beehive.netui.pageflow.PageFlowController;
+import org.apache.beehive.netui.pageflow.Forward;
+import org.apache.beehive.netui.pageflow.annotations.Jpf;
+
+/**
+ * This is the default controller for a blank web application.
+ */
+@Jpf.Controller
+public class Controller extends PageFlowController
+{
+    private String _text;
+    public String getText() {
+        return _text;
+    }
+
+    private String _method;
+    public String getMethod() {
+        return _method;
+    }
+
+    @Jpf.Action(
+        forwards={
+           @Jpf.Forward(name="index", path="index.jsp")
+        }
+    )
+    protected Forward begin()
+    {
+        return new Forward("index");
+    }
+
+
+    /**
+     * Callback that is invoked when this controller instance is created.
+     */
+    protected void onCreate()
+    {
+    }
+
+    /**
+     * Callback that is invoked when this controller instance is destroyed.
+     */
+    protected void onDestroy(HttpSession session)
+    {
+    }
+
+        
+    @Jpf.Action(forwards = { 
+        @Jpf.Forward(name = "success",
+                     path = "index.jsp")
+    })
+    protected Forward post(Bean form)
+    {
+        Forward forward = new Forward("success");
+        _text = form.getText1();
+        _method = "post";
+        return forward;
+    }
+
+    @Jpf.Action(forwards = { 
+        @Jpf.Forward(name = "success",
+                     path = "index.jsp")
+    })
+    protected Forward override(Bean form)
+    {
+        Forward forward = new Forward("success");
+        _text = form.getText1();
+        _method = "override";
+        return forward;
+    }
+                    
+    public static class Bean extends FormData
+    {
+        private String text1;
+        private String text2;
+        
+        public String getText1()
+        {
+            return text1;
+        }
+        
+        public void setText1(String value)
+        {
+            text1 = value;
+        }
+
+        public String getText2()
+        {
+            return text2;
+        }
+        
+        public void setText2(String value)
+        {
+            text2 = value;
+        }
+    }
+}
+
+@Jpf.ViewProperties(value= {"<!-- This data is auto-generated. Hand-editing this section is not recommended. -->",
+"<view-properties>",
+"<pageflow-object id='pageflow:/coretags/imagebutton/id/Controller.jpf'/>",
+"<pageflow-object id='page:index.jsp'><property value='220' name='x'/><property value='100' name='y'/></pageflow-object>",
+"<pageflow-object id='formbean:Bean'/>",
+"<pageflow-object id='action:begin.do'><property value='80' name='x'/><property value='100' name='y'/></pageflow-object>",
+"<pageflow-object id='action:post.do#coretags.imagebutton.id.Controller.Bean'><property name='x' value='340'/><property name='y' value='100'/></pageflow-object>",
+"<pageflow-object id='forward:path#index#index.jsp#@action:begin.do@'><property value='116,140,140,164' name='elbowsX'/><property value='92,92,92,92' name='elbowsY'/><property value='East_1' name='fromPort'/><property value='West_1' name='toPort'/><property value='index' name='label'/></pageflow-object>",
+"<pageflow-object id='action-call:@page:index.jsp@#@action:post.do#coretags.imagebutton.id.Controller.Bean@'><property name='elbowsX' value='256,280,280,304'/><property name='elbowsY' value='92,92,92,92'/><property name='fromPort' value='East_1'/><property name='toPort' value='West_1'/></pageflow-object>",
+"<pageflow-object id='forward:path#success#index.jsp#@action:post.do#coretags.imagebutton.id.Controller.Bean@'><property name='elbowsX' value='304,280,280,256'/><property name='elbowsY' value='103,103,103,103'/><property name='fromPort' value='West_2'/><property name='toPort' value='East_2'/><property name='label' value='success'/></pageflow-object>",
+"</view-properties>"
+})
+interface VIEW_PROPERTIES { }

Added: incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/index.jsp
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/index.jsp?view=auto&rev=111657
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/javascript/idnohtml/index.jsp	Sun Dec 12 08:40:54 2004
@@ -0,0 +1,49 @@
+<%@ 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"%>
+
+
+<html>
+    <head>
+        <netui:base/>
+    </head>
+    <body>
+        <netui:form tagId="form" action="post" focus="b1">
+            <table>
+                <tr valign="top">
+                    <td>Text:</td>
+                    <td>
+                    <netui:textBox tagId="t1" dataSource="actionForm.text1" /><br>
+                    <netui:textBox tagId="t2" dataSource="actionForm.text2" />
+                    </td>
+                </tr>
+            </table>
+            <br>
+            <netui:button tagId="b1" value="Submit" />&nbsp;
+            <netui:button tagId="b2" value="Override" action="override"/>&nbsp;
+
+        </netui:form>
+        <hr>
+        Post Value: <netui:label value="${pageFlow.text}"/><br>
+        Method: <netui:label value="${pageFlow.method}"/>
+        <hr>
+        <p id="javaOut"></p>
+    </body>
+    <script language="JavaScript" type="text/JavaScript">
+    var p = document.getElementById("javaOut");
+    var val = "<b>Document Access</b><br>";
+    val = val + "Form By Id is null: <b>" + (document.form == null) + "</b><br>";
+    val = val + "Form By Id is null: <b>" + (document["bean"] == null) + "</b><br>";
+    val = val + "<br><b>NetUI Access Methods</b><br>";
+
+    val = val + "TextBox 1 by id is null: <b>" +
+        (document.getElementById(lookupIdByTagId("t1")) == null) + "</b><br>";
+    val = val + "TextBox 1 by name is null: <b>" +
+        (document["bean"][lookupNameByTagId("t1")] == null) + "</b><br>";
+
+    p.innerHTML = val;
+    </script>
+</html>
+
+  
\ No newline at end of file

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?view=diff&rev=111657&p1=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml&r1=111656&p2=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml&r2=111657
==============================================================================
--- 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	Sun Dec 12 08:40:54 2004
@@ -2933,6 +2933,31 @@
          </features>
       </test>
       <test>
+         <name>jsid</name>
+         <description>Verify the name and id lookup tables work</description>
+         <webapp>coreWeb</webapp>
+         <categories>
+            <category>bvt</category>
+            <category>tags</category>
+         </categories>
+         <features>
+            <feature>ScriptContainer</feature>
+            <feature>JavaScript</feature>
+         </features>
+      </test>
+      <test>
+         <name>jsidnohtml</name>
+         <description>Verify the name and id lookup tables work without a script container</description>
+         <webapp>coreWeb</webapp>
+         <categories>
+            <category>bvt</category>
+            <category>tags</category>
+         </categories>
+         <features>
+            <feature>JavaScript</feature>
+         </features>
+      </test>
+      <test>
          <name>JsNoContainers</name>
          <description>JSP Page containing all of the JavaScript components, no container to report</description>
          <webapp>coreWeb</webapp>

Added: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsid.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsid.xml?view=auto&rev=111657
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsid.xml	Sun Dec 12 08:40:54 2004
@@ -0,0 +1,204 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+   <ses:sessionName>jsid</ses:sessionName>
+   <ses:tester>daryl</ses:tester>
+   <ses:startDate>12 Dec 2004, 09:04:47.125 AM MST</ses:startDate>
+   <ses:description>Verify that the name and id mapping is generated correctly.</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/javascript/id/Controller.jpf</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>2F775B380E32D93FF2B4B650E825DDE7</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=2F775B380E32D93FF2B4B650E825DDE7</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>&lt;!DOCTYPE HTML PUBLIC "//W3C//DTD HTML 4.01 Transitional//EN"
+	"http://www.w3.org/TR/html4/loose.dtd">
+&lt;html lang="en">
+
+    &lt;head>
+        &lt;base href="http://localhost:8080/coreWeb/javascript/id/index.jsp">
+    &lt;/head>
+    &lt;body>
+        
+        &lt;form name="bean" id="form" action="/coreWeb/javascript/id/post.do" method="post">
+            &lt;table>
+                &lt;tr valign="top">
+                    &lt;td>Text:&lt;/td>
+                    &lt;td>
+                    &lt;input type="text" name="{actionForm.text1}" id="t1">&lt;br>
+                    &lt;input type="text" name="{actionForm.text2}" id="t2">
+                    &lt;/td>
+                &lt;/tr>
+            &lt;/table>
+            &lt;br>
+            &lt;input type="submit" id="b1" value="Submit">&amp;nbsp;
+            &lt;input type="submit" name="actionOverride:override" id="b2" value="Override">&amp;nbsp;
+
+        &lt;/form>
+        
+
+&lt;script language="JavaScript" type="text/JavaScript">
+&lt;!--
+
+// **** This section contains code that will run when the page is loaded ****
+
+
+// Build the netui_names table to map the tagId attributes
+// to the real id written into the HTML
+if (netui_names == null)
+   var netui_names = new Object();
+netui_names.b1="b1"
+netui_names.t1="{actionForm.text1}"
+netui_names.form="form"
+netui_names.b2="actionOverride:override"
+netui_names.t2="{actionForm.text2}"
+
+
+// Build the netui_names table to map the tagId attributes
+// to the real id written into the HTML
+if (netui_tagIdMap == null)
+   var netui_tagIdMap = new Object();
+netui_tagIdMap.b1="b1"
+netui_tagIdMap.t1="t1"
+netui_tagIdMap.b2="b2"
+netui_tagIdMap.t2="t2"
+
+
+// Build the netui_names table to map the tagId attributes
+// to the real id written into the HTML
+if (netui_tagIdNameMap == null)
+   var netui_tagIdNameMap = new Object();
+netui_tagIdNameMap.t1="{actionForm.text1}"
+netui_tagIdNameMap.b2="actionOverride:override"
+netui_tagIdNameMap.t2="{actionForm.text2}"
+
+
+// **** This section contains functions typically run as events ****
+
+
+// method which will return a real id for a tagId,
+// the tag parameter will be used to find the scopeId for
+// containers that may scope their ids
+function getNetuiTagName(id, tag)
+{
+   var scopeId = getScopeId(tag);
+   if (scopeId == "")
+      return netui_names[id];
+   else
+      return netui_names[scopeId  + "__" + id];
+}
+
+// lookup by tagId to "real id"
+function lookupIdByTagId(id, tag)
+{
+   var scopeId = getScopeId(tag);
+   if (scopeId == "")
+      return netui_tagIdMap[id];
+   else
+      return netui_tagIdMap[scopeId  + "__" + id];
+}
+
+// lookup by tagId to "real name"
+function lookupNameByTagId(id, tag)
+{
+   var scopeId = getScopeId(tag);
+   if (scopeId == "")
+      return netui_tagIdNameMap[id];
+   else
+      return netui_tagIdNameMap[scopeId  + "__" + id];
+}
+
+// This method will walk the hierarchy from the pass element looking for a scopeId.
+// The first scopeId found will be returned or the empty string if a scopeId is not found.
+function getScopeId(tag)
+{
+   if (tag == null)
+      return "";
+   if (tag.scopeId != null)
+      return tag.scopeId;
+   return getScopeId(tag.parentElement);
+}
+-->
+&lt;/script>
+
+
+        &lt;hr>
+        Post Value: &lt;label>&lt;/label>&lt;br>
+        Method: &lt;label>&lt;/label>
+        &lt;hr>
+        &lt;p id="javaOut">&lt;/p>
+    &lt;/body>
+    &lt;script language="JavaScript" type="text/JavaScript">
+    var p = document.getElementById("javaOut");
+    var val = "&lt;b>Document Access&lt;/b>&lt;br>";
+    val = val + "Form By Id is null: &lt;b>" + (document.form == null) + "&lt;/b>&lt;br>";
+    val = val + "Form By Id is null: &lt;b>" + (document["bean"] == null) + "&lt;/b>&lt;br>";
+    val = val + "&lt;br>&lt;b>NetUI Access Methods&lt;/b>&lt;br>";
+
+    val = val + "TextBox 1 by id is null: &lt;b>" +
+        (document.getElementById(lookupIdByTagId("t1")) == null) + "&lt;/b>&lt;br>";
+    val = val + "TextBox 1 by name is null: &lt;b>" +
+        (document["bean"][lookupNameByTagId("t1")] == null) + "&lt;/b>&lt;br>";
+
+    p.innerHTML = val;
+    &lt;/script>
+
+&lt;/html></ses:responseBody>
+         </ses:response>
+      </ses:test>
+   </ses:tests>
+   <ses:endDate>12 Dec 2004, 09:05:04.350 AM MST</ses:endDate>
+   <ses:testCount>1</ses:testCount>
+</ses:recorderSession>
\ No newline at end of file

Added: incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsidnohtml.xml
Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsidnohtml.xml?view=auto&rev=111657
==============================================================================
--- (empty file)
+++ incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/jsidnohtml.xml	Sun Dec 12 08:40:54 2004
@@ -0,0 +1,242 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+   <ses:sessionName>jsidnohtml</ses:sessionName>
+   <ses:tester>daryl</ses:tester>
+   <ses:startDate>12 Dec 2004, 09:05:47.802 AM MST</ses:startDate>
+   <ses:description>verify the lookup for name and id without a script container</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/javascript/idnohtml/Controller.jpf</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>2F775B380E32D93FF2B4B650E825DDE7</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=2F775B380E32D93FF2B4B650E825DDE7</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><![CDATA[<html>
+    <head>
+        <base href="http://localhost:8080/coreWeb/javascript/idnohtml/index.jsp">
+    </head>
+    <body>
+        <form name="bean" id="form" action="/coreWeb/javascript/idnohtml/post.do" method="post">
+            <table>
+                <tr valign="top">
+                    <td>Text:</td>
+                    <td>
+                    <input type="text" name="{actionForm.text1}" id="t1">
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+// Build the netui_names table to map the tagId attributes
+// to the real id written into the HTML
+if (netui_names == null)
+   var netui_names = new Object();
+netui_names.t1="{actionForm.text1}"
+// method which will return a real id for a tagId,
+// the tag parameter will be used to find the scopeId for
+// containers that may scope their ids
+function getNetuiTagName(id, tag)
+{
+   var scopeId = getScopeId(tag);
+   if (scopeId == "")
+      return netui_names[id];
+   else
+      return netui_names[scopeId  + "__" + id];
+}
+
+// This method will walk the hierarchy from the pass element looking for a scopeId.
+// The first scopeId found will be returned or the empty string if a scopeId is not found.
+function getScopeId(tag)
+{
+   if (tag == null)
+      return "";
+   if (tag.scopeId != null)
+      return tag.scopeId;
+   return getScopeId(tag.parentElement);
+}
+
+-->
+</script>
+
+
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+
+// map tagId to "real name"
+if (netui_tagIdMap == null)
+   var netui_tagIdMap = new Object();
+netui_tagIdMap.t1="t1"
+// lookup by tagId to "real id"
+function lookupIdByTagId(id, tag)
+{
+   var scopeId = getScopeId(tag);
+   if (scopeId == "")
+      return netui_tagIdMap[id];
+   else
+      return netui_tagIdMap[scopeId  + "__" + id];
+}
+
+
+// map tagId to "real name"
+if (netui_tagIdNameMap == null)
+   var netui_tagIdNameMap = new Object();
+netui_tagIdNameMap.t1="{actionForm.text1}"
+// lookup by tagId to "real name"
+function lookupNameByTagId(id, tag)
+{
+   var scopeId = getScopeId(tag);
+   if (scopeId == "")
+      return netui_tagIdNameMap[id];
+   else
+      return netui_tagIdNameMap[scopeId  + "__" + id];
+}
+
+-->
+</script>
+
+<br>
+                    <input type="text" name="{actionForm.text2}" id="t2">
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_names.t2="{actionForm.text2}"
+-->
+</script>
+
+
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_tagIdMap.t2="t2"
+netui_tagIdNameMap.t2="{actionForm.text2}"
+-->
+</script>
+
+
+                    </td>
+                </tr>
+            </table>
+            <br>
+            <input type="submit" id="b1" value="Submit">
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_names.b1="b1"
+-->
+</script>
+
+
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_tagIdMap.b1="b1"
+-->
+</script>
+
+&nbsp;
+            <input type="submit" name="actionOverride:override" id="b2" value="Override">
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_names.b2="actionOverride:override"
+-->
+</script>
+
+
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_tagIdMap.b2="b2"
+netui_tagIdNameMap.b2="actionOverride:override"
+-->
+</script>
+
+&nbsp;
+
+        </form>
+
+<script language="JavaScript" type="text/JavaScript">
+<!--
+netui_names.form="form"
+-->
+</script>
+
+
+        <hr>
+        Post Value: <label></label><br>
+        Method: <label></label>
+        <hr>
+        <p id="javaOut"></p>
+    </body>
+    <script language="JavaScript" type="text/JavaScript">
+    var p = document.getElementById("javaOut");
+    var val = "<b>Document Access</b><br>";
+    val = val + "Form By Id is null: <b>" + (document.form == null) + "</b><br>";
+    val = val + "Form By Id is null: <b>" + (document["bean"] == null) + "</b><br>";
+    val = val + "<br><b>NetUI Access Methods</b><br>";
+
+    val = val + "TextBox 1 by id is null: <b>" +
+        (document.getElementById(lookupIdByTagId("t1")) == null) + "</b><br>";
+    val = val + "TextBox 1 by name is null: <b>" +
+        (document["bean"][lookupNameByTagId("t1")] == null) + "</b><br>";
+
+    p.innerHTML = val;
+    </script>
+</html>]]></ses:responseBody>
+         </ses:response>
+      </ses:test>
+   </ses:tests>
+   <ses:endDate>12 Dec 2004, 09:05:58.037 AM MST</ses:endDate>
+   <ses:testCount>1</ses:testCount>
+</ses:recorderSession>
\ No newline at end of file