Author: dolander
Date: Tue Jan 25 12:46:55 2005
New Revision: 126422

URL: http://svn.apache.org/viewcvs?view=rev&rev=126422
Log:
Add support to the DivPanel for XmlHttpRequest to support saving the state of 
the currently
selected page.  Saving state is optional and requires setting a dataSource to a 
DivPanelState
object (this will be automatically created so a page flow just needs the 
property).

Moved the DivPanel out of the Template tags and into the HTML tags

Updated all of the tests and results.



Added:
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClientRequestInterceptor.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanel.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelCRI.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelState.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/TreeCRI.java
      - copied, changed from r126288, 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java
Removed:
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java
   
incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/DivPanel.java
Modified:
   incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java
   
incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java
   
incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties
   
incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf
   
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp
   
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml
   
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml
   
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml

Modified: incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js&r1=126421&p2=incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js&r2=126422
==============================================================================
--- incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js 
(original)
+++ incubator/beehive/trunk/netui/src/javascript/tagshtml/netui-tree.js Tue Jan 
25 12:46:55 2005
@@ -79,13 +79,13 @@
 // the server.  The command must be a fully formed URL including all of the 
 // parameters.
 // @param cmdUrl the fully specified URL representing the command to the 
servere
-NetUITree.prototype.raiseCommand = function(cmdUrl)
+NetUI.prototype.raiseCommand = function(cmdUrl,callback)
 {
     var req = null;
     var func = function() {
        if (req.readyState==4) {
           if (req.status == 200) {
-              NetUITreeXmlHttpRequestReturn(req);
+              callback(req);
           }
           else {
               reportError("Unable to retrieve XML data:"; +  req.statusText);
@@ -111,6 +111,10 @@
     }
 }
 
+function NetUITreeXmlHttpRequestReturn()
+{
+}
+
 function NetUIExpandTree()
 {
     // make sure that what is calling this is an anchor
@@ -122,7 +126,7 @@
     var treeName = netUI.netUITree.getTreeName(this);
     var nodeName = this.getAttribute("netui-tree-id");
     var url = 
netUI.netUITree.getTreeCommandUrl("treeExpand",treeName,nodeName);
-    netUI.netUITree.raiseCommand(url);
+    netUI.raiseCommand(url,NetUITreeXmlHttpRequestReturn);
 
     // find the image child so we can change the image
     var children = this.childNodes;
@@ -180,7 +184,7 @@
        var treeName = netUI.netUITree.getTreeName(node);
        var nodeName = node.getAttribute("netui-tree-id");
        var url = 
netUI.netUITree.getTreeCommandUrl("treeCollapse",treeName,nodeName);
-       netUI.netUITree.raiseCommand(url);
+       netUI.raiseCommand(url);
     }
 
     var children = node.childNodes;
@@ -354,7 +358,6 @@
 }
 
 ///////////////////////////////// DivPanel //////////////////////////
-// @Todo: this should be moved?
 
 // This is a DivPaneContainer
 function NetUIDivPanelInstance()
@@ -362,17 +365,23 @@
     this.pages = new Object();
     this.curPage = null;
     this.pageName = null;
+    this.divPanelName = null;
 }
 
 NetUIDivPanelInstance.prototype.showPage = function(page)
 {
+    if (this.divPanelName != null) {
+       var url = 
netUI.netUIDivPanel.getCommandUrl("switchPage",this.divPanelName,page);
+       netUI.raiseCommand(url,NetUIDivPanelXmlHttpRequestReturn);
+    }
+
     var newPage = this.pages[page];
     if (newPage != null) {
-           this.curPage.style.display = "none";
-           this.curPage = newPage;
-           this.curPage.style.display = "";
-            this.pageName = page;
-       }
+       this.curPage.style.display = "none";
+       this.curPage = newPage;
+       this.curPage.style.display = "";
+       this.pageName = page;
+    }
 }
 
 // panels -- this is a hash of all the panels defined.  It is a mapping
@@ -382,6 +391,17 @@
     this.panels = new Object();
 }
 
+// This method will create a command URL.  
+// @param command this is the command name, it is a simple String
+// @param treeName this name of the tree
+// @param nodeName this is the node to apply the command to
+NetUIDivPanel.prototype.getCommandUrl = function(command,divPanelName, 
firstPage)
+{
+    var url = netUI.webAppName + "/" + command + 
NetUI.prototype.xmlHttpRequestMapping +
+       "?divPanel=" + divPanelName + "&firstPage=" + firstPage;
+    return url;
+}
+
 // The initialization routine will walk all the div's looking
 // for DivPanels.
 NetUIDivPanel.prototype.init = function()
@@ -404,7 +424,9 @@
             var attr = node.getAttribute("netui-div-panel");
             if (attr != null) {
                 //alert("here:" + node.id);
+               attr = node.getAttribute("netui:divName");
                 var dp = new NetUIDivPanelInstance();
+               dp.divPanelName = attr;
                 netUI.members[node.id] = dp;
                 this.panels[node.id] = dp;
                 this.createDivPanel(node,dp);
@@ -413,7 +435,7 @@
                 if (attr != null) {
                     this.panels[node.id].showPage(attr);
                 }
-                return;
+
             }
         }
         var children = node.childNodes;
@@ -462,6 +484,10 @@
     }
 
     node.href = node.href + state;
+}
+
+function NetUIDivPanelXmlHttpRequestReturn()
+{
 }
 
 // Utility function to report an error

Added: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClientRequestInterceptor.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClientRequestInterceptor.java?view=auto&rev=126422
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/AbstractClientRequestInterceptor.java
     Tue Jan 25 12:46:55 2005
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package org.apache.beehive.netui.tags;
+
+import org.apache.beehive.netui.pageflow.requeststate.IRequestInterceptor;
+
+abstract public class AbstractClientRequestInterceptor implements 
IRequestInterceptor
+{
+    protected String getCommand( String cmd, String ctxtPath)
+    {
+        // catch any runtime errors here and return.
+        try {
+            cmd = cmd.substring(ctxtPath.length()+1);
+            int idx = cmd.lastIndexOf('.');
+            if (idx != -1) {
+                cmd = cmd.substring(0,idx);
+            }
+        }
+        catch (RuntimeException e) {
+            System.err.println("Runtime Error creating XmlRequestServlet 
Command:" + e.getClass().getName());
+            return null;
+        }
+        return cmd;
+    }
+}

Added: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanel.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanel.java?view=auto&rev=126422
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanel.java
    Tue Jan 25 12:46:55 2005
@@ -0,0 +1,249 @@
+/*
+ * Copyright 2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package org.apache.beehive.netui.tags.divpanel;
+
+import org.apache.beehive.netui.pageflow.requeststate.NameService;
+import org.apache.beehive.netui.script.ExpressionUpdateException;
+import org.apache.beehive.netui.script.IllegalExpressionException;
+import org.apache.beehive.netui.tags.AbstractClassicTag;
+import org.apache.beehive.netui.tags.ExpressionHandling;
+import org.apache.beehive.netui.tags.IScriptReporter;
+import org.apache.beehive.netui.tags.rendering.AbstractHtmlState;
+import org.apache.beehive.netui.tags.rendering.DivTag;
+import org.apache.beehive.netui.tags.rendering.TagRenderingBase;
+import org.apache.beehive.netui.tags.rendering.WriteRenderAppender;
+import org.apache.beehive.netui.util.Bundle;
+
+import javax.servlet.ServletRequest;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.jsp.JspException;
+
+/**
+ * A DivPanel creates an HTML <div> tag that may contain additional <div> 
tags.  There will only
+ * be a single div that is visible at a time.
+ * 
+ * @jsptagref.tagdescription
+ * Creates an HTML &lt;div> tag that may contain additional <div> tags.  Only 
a single section will be visible at a time.
+ * 
+ * @netui:tag name="divPanel"
+ * description="A divPanel is an placeholder which may contain multiple 
sections.  Only a single section will be visible at a time."
+ * @netui.tldx:tag whitespace="indent"
+ */
+public class DivPanel extends AbstractClassicTag
+{
+    private String _tagId;
+    private String _firstPage;
+    private String _dataSource = null;       // The name of the tree.
+    private DivTag.State _divState = new DivTag.State();
+
+    private final String JAVASCRIPT_CLASS = "NetUIDivPanel";
+
+    public static final String DIVPANEL_JAVASCRIPT_ATTR = "netui-div-panel";
+    public static final String DIVPANEL_FIRST_PAGE = "netui-div-panel-first";
+
+    public static final String DIVPANEL_DIV_ID = "netui_divpanel_";
+
+    public static String getCurrentPage(ServletRequest req, String tagId) {
+        String reqId = DIVPANEL_DIV_ID + tagId;
+        String page = req.getParameter(reqId);
+        return page;
+    }
+
+    /**
+     * Returns the name of the Tag.  This is used to
+     * identify the type of tag reporting errors.
+     * @return a constant string representing the name of the tag.
+     */
+    public String getTagName()
+    {
+        return "DivPanel";
+    }
+
+    /**
+     * Sets an expression which indentifies the DivPanelState which will store 
the state of the
+     * DivPanel between posts to the server.
+     * @param dataSource - the tree attribute name
+     * @netui:attribute
+     * description="Sets an expression which indentifies the DivPanelState 
storing the state of the
+     * DivPanel between posts."
+     * @netui.tldx:attribute language="netuiel"
+     */
+    public void setDataSource(String dataSource)
+    {
+        _dataSource = dataSource;
+    }
+
+    /**
+     * Set the ID of the tag.
+     * @param tagId - the tagId.
+     * @netui:attribute required="true" rtexprvalue="true"
+     * description="Set the ID of the tag."
+     * @netui.tldx:attribute category="general"
+     */
+    public void setTagId(String tagId)
+    {
+        _tagId = tagId;
+    }
+
+    /**
+    * Set the ID of the tag.
+    * @param firstPage - the name of the first page.
+    * @netui:attribute rtexprvalue="true"
+    * description="Set the name of the first page to display."
+    * @netui.tldx:attribute category="general"
+    */
+    public void setFirstPage(String firstPage)
+    {
+        _firstPage = firstPage;
+
+    }
+
+    /**
+     * Causes the content of the section to be rendered into a buffer.
+     * @return SKIP_BODY if the visible state is <code>false</code>,
+     *         otherwise EVAL_BODY_BUFFERED to cause the body content to be 
buffered.
+     * @throws javax.servlet.jsp.JspException if there are errors.
+     */
+    public int doStartTag()
+            throws JspException
+    {
+        HttpServletRequest req = (HttpServletRequest) pageContext.getRequest();
+
+        // if there was a dataSource defined we need to get it based upon the 
expression
+        // if the variable comes back null, we then create a DivPanelState and 
set it back
+        // to the property referred to by the expression.
+        DivPanelState state = null;
+        if (_dataSource != null) {
+            ExpressionHandling _expr;
+            _expr = new ExpressionHandling(this);
+            try {
+                state = getState(_expr);
+            }
+            catch (IllegalExpressionException iee) {
+                String s = Bundle.getString("TreeRootError", new 
Object[]{_dataSource, iee.getMessage()});
+                registerTagError(s, null);
+                return SKIP_BODY;
+            }
+            if (hasErrors())
+                reportAndExit(SKIP_BODY);
+
+            // if we got here and the state is null then create a new 
divPanel, and push it back on
+            // the expression
+            if (state == null) {
+                try {
+                    state = new DivPanelState();
+                    String datasource = "{" + _dataSource + "}";
+                    _expr.updateExpression(datasource, state, pageContext);
+                }
+                catch (ExpressionUpdateException e) {
+                    String s = Bundle.getString("Tags_UnableToWriteTree", new 
Object[]{_dataSource, e.getMessage()});
+                    registerTagError(s, null);
+                    reportErrors();
+                    return SKIP_BODY;
+                }
+
+                if (hasErrors())
+                    reportAndExit(SKIP_BODY);
+
+                // name the divPanel so we can post state back to this state 
object.
+                NameService ns = 
NameService.instance(pageContext.getSession());
+                ns.nameObject("DivPanel",state);
+                ns.put(state);
+            }
+        }
+
+        IScriptReporter sr = getScriptReporter();
+        if (!sr.isRunAtClient()) {
+            System.err.println("Script Reporter Not Run At Client");
+            // @Todo: this needs to verify it is inside a script container 
that is run at client enabled.
+        }
+        sr.addInitMethod(JAVASCRIPT_CLASS);
+
+        // figure out if there is a page to render
+        String page = _firstPage;
+        if (state != null) {
+            String fp = state.getFirstPage();
+            if (fp != null)
+                page = fp;
+        }
+
+        if (hasErrors())
+            reportAndExit(EVAL_BODY_INCLUDE);
+
+        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
+        _divState.id = this.getIdForTagId(_tagId);
+        _divState.registerAttribute(AbstractHtmlState.ATTR_GENERAL, 
DIVPANEL_JAVASCRIPT_ATTR, "true");
+        if (page != null)
+            _divState.registerAttribute(AbstractHtmlState.ATTR_GENERAL, 
DIVPANEL_FIRST_PAGE, page);
+        if (state != null)
+            _divState.registerAttribute(AbstractHtmlState.ATTR_GENERAL, 
"netui:divName", state.getObjectname());
+
+        TagRenderingBase divRenderer = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.DIV_TAG, req);
+        divRenderer.doStartTag(writer,_divState);
+        return EVAL_BODY_INCLUDE;
+    }
+
+    /**
+     * Stores the buffered body content into the <code>TEMPLATE_SECTIONS
+     * HashMap</code>.  The buffered body is
+     * accessed by the template page to obtain
+     * the content for <code>IncludeSection</code> tags.
+     * @return EVAL_PAGE to continue evaluating the page.
+     * @throws JspException on error.
+     */
+    public int doEndTag()
+            throws JspException
+    {
+        HttpServletRequest req = (HttpServletRequest) pageContext.getRequest();
+        if (!hasErrors()) {
+            WriteRenderAppender writer = new WriteRenderAppender(pageContext);
+            TagRenderingBase divRenderer = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.DIV_TAG, req);
+            divRenderer.doEndTag(writer);
+        }
+        localRelease();
+        return EVAL_PAGE;
+    }
+
+    protected void localRelease()
+    {
+        super.localRelease();
+        _tagId = null;
+        _divState.clear();
+        _firstPage = null;
+        _dataSource = null;
+    }
+
+    /**
+     */
+    protected DivPanelState getState(ExpressionHandling expr)
+            throws JspException
+    {
+        String datasource = "{" + _dataSource + "}";
+        Object state = expr.evaluateExpression(datasource, "dataSource", 
pageContext);
+        if (state == null || hasErrors()) {
+            return null;
+        }
+
+        if (!(state instanceof DivPanelState)) {
+            String s = Bundle.getString("Tags_DivPanelInvalidAttribute", 
_dataSource);
+            registerTagError(s, null);
+            return null;
+        }
+        return (DivPanelState) state;
+    }
+}

Added: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelCRI.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelCRI.java?view=auto&rev=126422
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelCRI.java
 Tue Jan 25 12:46:55 2005
@@ -0,0 +1,76 @@
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package org.apache.beehive.netui.tags.divpanel;
+
+import org.apache.beehive.netui.pageflow.requeststate.InterceptorContext;
+import 
org.apache.beehive.netui.pageflow.requeststate.ServletInterceptorContext;
+import org.apache.beehive.netui.pageflow.requeststate.NameService;
+import org.apache.beehive.netui.pageflow.requeststate.INameable;
+import org.apache.beehive.netui.tags.AbstractClientRequestInterceptor;
+
+import javax.servlet.http.HttpServletRequest;
+
+public class DivPanelCRI extends AbstractClientRequestInterceptor
+ {
+    private static final String SWITCH_PAGE = "switchPage";
+
+    public void interceptRequest(InterceptorContext ctxt)
+    {
+        if (!(ctxt instanceof ServletInterceptorContext))
+            return;
+
+        HttpServletRequest request = (HttpServletRequest) 
((ServletInterceptorContext) ctxt).getRequest();
+
+        // Create the command by striping off the context path and the 
extension
+        String uri = request.getRequestURI();
+        String ctxtPath = request.getContextPath();
+
+        String cmd = getCommand(uri,ctxtPath);
+
+
+        // check to see if we handle this command
+        if (SWITCH_PAGE.equals(cmd)) {
+            handlePageSwitch(ctxt,request);
+        }
+
+    }
+
+    private void handlePageSwitch(InterceptorContext ctxt,HttpServletRequest 
req)
+    {
+        String dp = req.getParameter("divPanel");
+        String fp = req.getParameter("firstPage");
+        //System.err.println("DivPanel Command: switch, DivPanel:" + dp + " 
Node:" + fp);
+
+        NameService ns = NameService.instance(req.getSession());
+        assert(ns != null);
+
+        // get the tree from the name service
+        INameable n = ns.get(dp);
+        if (n == null) {
+            System.err.println("DivPanel '" + dp + "' was not found in the 
NameService");
+            return;
+        }
+        if (!(n instanceof DivPanelState)) {
+            System.err.println("Named dp was not an instance of a 
DivPanelState");
+            return;
+        }
+
+        DivPanelState state = (DivPanelState) n;
+        state.setFirstPage(fp);
+    }
+}

Added: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelState.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelState.java?view=auto&rev=126422
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/divpanel/DivPanelState.java
       Tue Jan 25 12:46:55 2005
@@ -0,0 +1,57 @@
+/*
+ * Copyright 2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ * $Header:$
+ */
+package org.apache.beehive.netui.tags.divpanel;
+
+import org.apache.beehive.netui.pageflow.requeststate.INameable;
+
+import java.io.Serializable;
+
+public class DivPanelState implements INameable, Serializable
+{
+    private String _name;
+    private String _firstPage;
+
+    /**
+     * Set the ObjectName of the INameable object.  This should only
+     * be set once.  If it is called a second time an IllegalStateException
+     * should be thrown
+     *
+     * @param name the Object's name.
+     * @throws IllegalStateException if this method is called more than once 
for an object
+     */
+    public void setObjectName(String name) {
+        _name = name;
+    }
+
+    /**
+     * Returns the ObjectName of the INameable object.
+     *
+     * @return the ObjectName.
+     */
+    public String getObjectname() {
+        return _name;
+    }
+
+    public String getFirstPage() {
+        return _firstPage;
+    }
+
+    public void setFirstPage(String firstPage) {
+        _firstPage = firstPage;
+    }
+}

Deleted: 
/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java?view=auto&rev=126421
==============================================================================

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java&r1=126421&p2=incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/Tree.java
    Tue Jan 25 12:46:55 2005
@@ -121,6 +121,8 @@
     private String _dataSource = null;       // The name of the tree.
 
     private String _tagId;                   // tag that should uniquely 
indentify a tree.  Required for multiple tree using auto expand
+    //@todo: delete
+    //private String[] _expanded = null;
     private boolean _runAtClient = false;    // run at client
     private boolean _escapeContent = false;  // esapce the content of labels
     private boolean _outputJavaScript = false; // cause the base javascript 
support to be output
@@ -662,6 +664,10 @@
             TreeHelpers.processTreeRequest(treeId, treeRoot, request);
         }
 
+        // check for the nodes that are expanded...
+        //@todo: delete
+        //_expanded = request.getParameterValues("tree-state");
+
         // Add the script support for the tree.
         if (_runAtClient) {
             IScriptReporter sr = getScriptReporter();
@@ -672,6 +678,7 @@
                 return;
             }
             sr.addInitMethod(TreeElement.TREE_JAVASCRIPT_CLASS);
+            //sr.addAnchorPostRewriter(TreeElement.TREE_JAVASCRIPT_CLASS);
         }
 
         // create a containing tree level <div> and place the tree level 
styles on it.
@@ -990,6 +997,9 @@
             if (_runAtClient) {
                 String action = node.getClientAction();
                 if (action != null) {
+                // @todo: delete
+                    //action = "NetUIAnchorRewriter(this);";
+                //else {
                     action = HtmlUtils.escapeEscapes(action);
                     action = JavaScriptUtils.getString("netuiAction", new 
Object[]{action});
                 }
@@ -1141,6 +1151,13 @@
                                                 TreeElement node, String 
encodedNodeName)
     {
         if (!node.isLeaf()) {
+            // @todo: delete
+            //boolean expanded = nodeIsExpanded(node, encodedNodeName);
+            //if (node.isExpanded() != expanded) {
+            //    node.onExpand();
+            //    node.setExpanded(expanded);
+            //}
+
             boolean expanded = node.isExpanded();
             _anchorState.clear();
             _anchorState.href = "";
@@ -1155,6 +1172,23 @@
         }
         return false;
     }
+
+    /**
+     * @param node
+     * @param nodeName
+     * @return
+     */
+    //@todo: delete
+    //private boolean nodeIsExpanded(TreeElement node, String nodeName)
+    //{
+    //    if (_expanded == null)
+    //        return node.isExpanded();
+    //    for (int i = 0; i < _expanded.length; i++) {
+    //        if (nodeName.equals(_expanded[i]))
+    //            return true;
+    //    }
+    //    return false;
+    //}
 
     /**
      * Replace any occurrence of the specified placeholder in the specified

Copied: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/TreeCRI.java
 (from r126288, 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java)
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/TreeCRI.java?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java&r1=126288&p2=incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/TreeCRI.java&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/ClientRequestInterceptor.java
        (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/tree/TreeCRI.java
 Tue Jan 25 12:46:55 2005
@@ -22,7 +22,7 @@
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpSession;
 
-public class ClientRequestInterceptor implements IRequestInterceptor
+public class TreeCRI implements IRequestInterceptor
 {
     private static final String TREE_COLLAPSE = "treeCollapse";
     private static final String TREE_EXPAND = "treeExpand";

Deleted: 
/incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/DivPanel.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/DivPanel.java?view=auto&rev=126421
==============================================================================

Modified: 
incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java&r1=126421&p2=incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java
 (original)
+++ 
incubator/beehive/trunk/netui/src/tags-template/org/apache/beehive/netui/tags/template/Section.java
 Tue Jan 25 12:46:55 2005
@@ -18,6 +18,7 @@
 package org.apache.beehive.netui.tags.template;
 
 import org.apache.beehive.netui.tags.AbstractClassicTag;
+import org.apache.beehive.netui.tags.divpanel.DivPanel;
 import org.apache.beehive.netui.tags.databinding.repeater.Repeater;
 import org.apache.beehive.netui.util.Bundle;
 

Modified: 
incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties&r1=126421&p2=incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties
       (original)
+++ 
incubator/beehive/trunk/netui/src/util/org/apache/beehive/netui/util/netui.properties
       Tue Jan 25 12:46:55 2005
@@ -27,6 +27,8 @@
 Tags_UnableToWriteTree=Unable to create the tree instance identified by the 
expression ''{0}''. Error:<br>{1}
 Tags_TreeInvalidAttribute=Invalid tree control attribute ''{0}''.
 Tags_TreeDataNodeNotUnique=Tree node named ''{0}'' already belongs to this 
tree.
+Tags_DivPanelInvalidAttribute=Invalid DivPanelState attribute ''{0}''.
+Tags_UnableToWriteDivPanel=Unable to create the DivPanelState instance 
identified by the expression ''{0}''. Error:<br>{1}
 Tags_InvalidParameterParent=Parameter tag's parent must implement URLParams.
 Tags_InvalidParameterMapParent=ParameterMap tag's parent must implement 
URLParams.
 Tags_InvalidConfigurePopupParent=ConfigurePopup tag's parent must implement 
IHasPopupSupport.

Modified: 
incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml&r1=126421&p2=incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml
  (original)
+++ 
incubator/beehive/trunk/netui/src/webapp-template/default/WEB-INF/netui-config.xml
  Tue Jan 25 12:46:55 2005
@@ -13,7 +13,8 @@
     </expression-languages>
 
     <request-interceptors>
-       
<interceptor-class>org.apache.beehive.netui.tags.tree.ClientRequestInterceptor</interceptor-class>
+        
<interceptor-class>org.apache.beehive.netui.tags.tree.TreeCRI</interceptor-class>
+        
<interceptor-class>org.apache.beehive.netui.tags.divpanel.DivPanelCRI</interceptor-class>
     </request-interceptors>
 
 </netui-config>

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml
       (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/WEB-INF/local-netui-config.xml
       Tue Jan 25 12:46:55 2005
@@ -137,7 +137,8 @@
     </iterator-factories>
 
     <request-interceptors>
-       
<interceptor-class>org.apache.beehive.netui.tags.tree.ClientRequestInterceptor</interceptor-class>
+       
<interceptor-class>org.apache.beehive.netui.tags.tree.TreeCRI</interceptor-class>
+       
<interceptor-class>org.apache.beehive.netui.tags.divpanel.DivPanelCRI</interceptor-class>
     </request-interceptors>
 
 </netui-config>

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf
 (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/Controller.jpf
 Tue Jan 25 12:46:55 2005
@@ -20,6 +20,8 @@
 import org.apache.beehive.netui.pageflow.PageFlowController;
 import org.apache.beehive.netui.pageflow.Forward;
 import org.apache.beehive.netui.pageflow.annotations.Jpf;
+import org.apache.beehive.netui.tags.divpanel.DivPanelState;
+import org.apache.beehive.netui.pageflow.requeststate.NameService;
 
 /**
  * This is the default controller for a blank web application.
@@ -66,6 +68,14 @@
 )
 public class Controller extends PageFlowController
 {
+    private DivPanelState _state;
+    public DivPanelState getDivState() {
+       return _state;
+    }
+    public void setDivState(DivPanelState state) {
+       _state = state;
+    }
+
     @Jpf.Action(
         forwards={
            @Jpf.Forward(name="index", path="index.jsp")
@@ -73,6 +83,8 @@
     )
     protected Forward begin()
     {
+        NameService ns = NameService.instance(getRequest().getSession());
+       ns.debugSetNameIntValue(1);
         return new Forward("index");
     }
 

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp  
    (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/bugs/cr180865/index.jsp  
    Tue Jan 25 12:46:55 2005
@@ -16,7 +16,7 @@
         <netui:anchor clientAction='divpanel.showPage("page2");'>page 
Two</netui:anchor>&nbsp;&nbsp;&nbsp;
         <netui:anchor clientAction='divpanel.showPage("page3");'>page 
Three</netui:anchor>
         <hr>
-        <netui-template:divPanel tagId="divpanel">
+        <netui:divPanel dataSource="pageFlow.divState" tagId="divpanel">
             <netui-template:section name="page1">
                 Page One<br>
                 <netui:anchor action="postback">postback</netui:anchor>
@@ -31,7 +31,7 @@
                 Page Three<br>
                 <netui:anchor action="postback">postback</netui:anchor>
             </netui-template:section>
-        </netui-template:divPanel>
+        </netui:divPanel>
     </body>
 </netui:html>
 

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp
  (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanel/index.jsp
  Tue Jan 25 12:46:55 2005
@@ -11,7 +11,7 @@
     </head>
     <netui:body>
     <h4>Basic DivPanel</h4>
-        <netui-template:divPanel tagId="divPanel">
+        <netui:divPanel tagId="divPanel">
             <netui-template:section name="page1">
             <table><tr>
                 <td colspan="2" align="center">Page 1</td>
@@ -36,6 +36,6 @@
                 <td width="100pt">&nbsp;</td>
             </tr></table>
             </netui-template:section>
-        </netui-template:divPanel>
+        </netui:divPanel>
     </netui:body>
 </netui:html>

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf
 (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/Controller.jpf
 Tue Jan 25 12:46:55 2005
@@ -20,6 +20,7 @@
 import org.apache.beehive.netui.pageflow.PageFlowController;
 import org.apache.beehive.netui.pageflow.annotations.Jpf;
 import org.apache.beehive.netui.tags.tree.TreeElement;
+import org.apache.beehive.netui.pageflow.requeststate.NameService;
 
 /**
  * @jpf:controller
@@ -125,6 +126,8 @@
         })
     protected Forward begin()
     {
+        NameService ns = NameService.instance(getRequest().getSession());
+       ns.debugSetNameIntValue(233);
         return new Forward("success");
     }
 

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp
      (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/template/divPanelTree/index.jsp
      Tue Jan 25 12:46:55 2005
@@ -38,7 +38,7 @@
             </netui:treeItem>
         </netui:tree>
         </td><td valign="top" width="50%">
-                <netui-template:divPanel tagId="divPanel" >
+                <netui:divPanel tagId="divPanel" >
                     <netui-template:section name="RootPage" ><h4>Root of the 
Tree<h4></netui-template:section>
                     <netui-template:section name="Page1" ><h4>Page 
1</h4></netui-template:section>
                     <netui-template:section name="Page11" ><h4>Page 
1.1</h4></netui-template:section>
@@ -49,7 +49,7 @@
                     <netui-template:section name="Page14" ><h4>Page 
1.4</h4></netui-template:section>
                     <netui-template:section name="Page2" ><h4>Page 
2</h4></netui-template:section>
                     <netui-template:section name="Page3" ><h4>Page 
3</h4></netui-template:section>
-                </netui-template:divPanel>
+                </netui:divPanel>
         </td></tr></table>
     </netui:body>
 </netui:html>

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml  
    (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanel.xml  
    Tue Jan 25 12:46:55 2005
@@ -2,7 +2,7 @@
 <ses:recorderSession 
xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session";>
    <ses:sessionName>DivPanel</ses:sessionName>
    <ses:tester>Daryl</ses:tester>
-   <ses:startDate>22 Jan 2005, 02:47:45.772 PM MST</ses:startDate>
+   <ses:startDate>25 Jan 2005, 01:18:16.340 PM MST</ses:startDate>
    <ses:description>Daryl</ses:description>
    <ses:tests>
       <ses:test>
@@ -18,7 +18,7 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>912F97F998ECF693268DE28A9815EEA1</ses:value>
+                  <ses:value>B59FCCF3DEB9A6CA95F21796F4BC4492</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
@@ -40,7 +40,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>$Version=0; 
JSESSIONID=912F97F998ECF693268DE28A9815EEA1; $Path=/coreWeb</ses:value>
+                  <ses:value>$Version=0; 
JSESSIONID=B59FCCF3DEB9A6CA95F21796F4BC4492; $Path=/coreWeb</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>cookie2</ses:name>
@@ -56,7 +56,7 @@
                </ses:header>
                <ses:header>
                   <ses:name>testrecorder.playback.testid</ses:name>
-                  <ses:value>39ee6810:1019c58abd2:-7d26</ses:value>
+                  <ses:value>6e902eff:101ab82a4c2:-7d0f</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>user-agent</ses:name>
@@ -95,7 +95,7 @@
     </head>
     <body>
     <h4>Basic DivPanel</h4>
-        <div  id="divPanel" netui-div-panel="true">
+        <div id="divPanel" netui-div-panel="true">
             <div  id="page1">
             <table><tr>
                 <td colspan="2" align="center">Page 1</td>
@@ -133,7 +133,6 @@
 // to the real id written into the HTML
 if (netui_names == null)
    var netui_names = new Object();
-netui_names.divPanel="divPanel"
 netui_names.page2="page2"
 netui_names.page3="page3"
 netui_names.page1="page1"
@@ -193,7 +192,7 @@
          </ses:testResults>
       </ses:test>
    </ses:tests>
-   <ses:endDate>22 Jan 2005, 02:47:47.364 PM MST</ses:endDate>
+   <ses:endDate>25 Jan 2005, 01:18:17.372 PM MST</ses:endDate>
    <ses:sessionStatus>fail</ses:sessionStatus>
    <ses:testCount>1</ses:testCount>
    <ses:passedCount>0</ses:passedCount>

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml
  (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DivPanelTree.xml
  Tue Jan 25 12:46:55 2005
@@ -2,8 +2,8 @@
 <ses:recorderSession 
xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session";>
    <ses:sessionName>DivPanelTree</ses:sessionName>
    <ses:tester>Daryl</ses:tester>
-   <ses:startDate>22 Jan 2005, 02:47:47.434 PM MST</ses:startDate>
-   <ses:description>Daryl</ses:description>
+   <ses:startDate>25 Jan 2005, 01:07:37.544 PM MST</ses:startDate>
+   <ses:description>Test of hooking the DivPanel and the Tree together in a 
runAtClient mode.</ses:description>
    <ses:tests>
       <ses:test>
          <ses:testNumber>1</ses:testNumber>
@@ -18,49 +18,45 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>912F97F998ECF693268DE28A9815EEA1</ses:value>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
                <ses:header>
-                  <ses:name>---------------</ses:name>
-                  <ses:value>----- -------- ------- --------- 
----------</ses:value>
+                  <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</ses:name>
-                  <ses:value>image/gif, image/x-xbitmap, image/jpeg, 
image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, 
application/msword, application/x-shockwave-flash, */*</ses:value>
+                  <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</ses:value>
+                  <ses:value>en-us,en;q=0.5</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>connection</ses:name>
-                  <ses:value>Keep-Alive, TE</ses:value>
+                  <ses:value>keep-alive</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>$Version=0; 
JSESSIONID=912F97F998ECF693268DE28A9815EEA1; $Path=/coreWeb</ses:value>
-               </ses:header>
-               <ses:header>
-                  <ses:name>cookie2</ses:name>
-                  <ses:value>$Version="1"</ses:value>
+                  
<ses:value>JSESSIONID=B930FEDD61F9710399DED0B835A2D24C</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
                   <ses:value>localhost:8080</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>te</ses:name>
-                  <ses:value>trailers, deflate, gzip, compress</ses:value>
-               </ses:header>
-               <ses:header>
-                  <ses:name>testrecorder.playback.testid</ses:name>
-                  <ses:value>39ee6810:1019c58abd2:-7d24</ses:value>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>user-agent</ses:name>
-                  <ses:value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 
5.1; .NET CLR 1.0.3705) RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E 
RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E RPT-HTTPClient/0.3-3E 
RPT-HTTPClient/0.3-3E</ses:value>
+                  <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>
@@ -101,7 +97,7 @@
     &lt;/head>
     &lt;body>
         &lt;table width="100%" cellspacing="5">&lt;tr>&lt;td width="20%" 
valign="top">
-        &lt;div netui:treeName="Tree0">
+        &lt;div netui:treeName="Tree233">
    &lt;div netui-tree-level="0">
       &lt;a href="" netui-tree-id="0" netui-tree-anchor="expand">&lt;img 
src="/coreWeb/resources/images/handledownlast.gif" 
style="vertical-align:middle;" border="0" alt="">&lt;/a>
       &lt;a href="" class="unselected" onclick='return 
netUI.action("divPanel.showPage(\"RootPage\");");'>&amp;nbsp;&lt;img 
src="/coreWeb/resources/images/folder_16_pad.gif" style="vertical-align:middle" 
border="0" alt="Tree Node">&amp;nbsp;Tree&amp;nbsp;&lt;/a>
@@ -162,7 +158,7 @@
 &lt;/div>
 
         &lt;/td>&lt;td valign="top" width="50%">
-                &lt;div  id="divPanel" netui-div-panel="true">
+                &lt;div id="divPanel" netui-div-panel="true">
                     &lt;div  id="RootPage">&lt;h4>Root of the 
Tree&lt;h4>&lt;/div>
                     &lt;div  id="Page1">&lt;h4>Page 1&lt;/h4>&lt;/div>
                     &lt;div  id="Page11">&lt;h4>Page 1.1&lt;/h4>&lt;/div>
@@ -187,7 +183,6 @@
 // to the real id written into the HTML
 if (netui_names == null)
    var netui_names = new Object();
-netui_names.divPanel="divPanel"
 netui_names.Page12="Page12"
 netui_names.RootPage="RootPage"
 netui_names.Page2="Page2"
@@ -253,14 +248,476 @@
 
 &lt;/html></ses:responseBody>
          </ses:response>
-         <ses:testResults>
-            <ses:testStatus>fail</ses:testStatus>
-         </ses:testResults>
+      </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/treeCollapse.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>node</ses:name>
+                  <ses:value>0.0.2</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>tree</ses:name>
+                  <ses:value>Tree233</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=B930FEDD61F9710399DED0B835A2D24C</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </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>/coreWeb/treeCollapse.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>node</ses:name>
+                  <ses:value>0.0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>tree</ses:name>
+                  <ses:value>Tree233</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=B930FEDD61F9710399DED0B835A2D24C</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </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>/coreWeb/treeExpand.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>node</ses:name>
+                  <ses:value>0.0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>tree</ses:name>
+                  <ses:value>Tree233</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=B930FEDD61F9710399DED0B835A2D24C</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>5</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/treeExpand.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>node</ses:name>
+                  <ses:value>0.0.2</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>tree</ses:name>
+                  <ses:value>Tree233</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=B930FEDD61F9710399DED0B835A2D24C</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>6</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/treeCollapse.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>node</ses:name>
+                  <ses:value>0.0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>tree</ses:name>
+                  <ses:value>Tree233</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=B930FEDD61F9710399DED0B835A2D24C</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>7</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/treeCollapse.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>node</ses:name>
+                  <ses:value>0</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>tree</ses:name>
+                  <ses:value>Tree233</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>B930FEDD61F9710399DED0B835A2D24C</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=B930FEDD61F9710399DED0B835A2D24C</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
       </ses:test>
    </ses:tests>
-   <ses:endDate>22 Jan 2005, 02:47:49.347 PM MST</ses:endDate>
-   <ses:sessionStatus>fail</ses:sessionStatus>
-   <ses:testCount>1</ses:testCount>
-   <ses:passedCount>0</ses:passedCount>
-   <ses:failedCount>1</ses:failedCount>
+   <ses:endDate>25 Jan 2005, 01:08:08.759 PM MST</ses:endDate>
+   <ses:testCount>7</ses:testCount>
 </ses:recorderSession>

Modified: 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml
Url: 
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml?view=diff&rev=126422&p1=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml&r1=126421&p2=incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml&r2=126422
==============================================================================
--- 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml  
    (original)
+++ 
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/cr180865.xml  
    Tue Jan 25 12:46:55 2005
@@ -1,9 +1,9 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <ses:recorderSession 
xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session";>
    <ses:sessionName>Cr180865</ses:sessionName>
-   <ses:tester>null</ses:tester>
-   <ses:startDate>22 Jan 2005, 02:44:42.639 PM MST</ses:startDate>
-   <ses:description>null</ses:description>
+   <ses:tester>Daryl</ses:tester>
+   <ses:startDate>25 Jan 2005, 12:30:25.715 PM MST</ses:startDate>
+   <ses:description>Basic test of DivPanel with an anchor 
postback.</ses:description>
    <ses:tests>
       <ses:test>
          <ses:testNumber>1</ses:testNumber>
@@ -18,49 +18,45 @@
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>912F97F998ECF693268DE28A9815EEA1</ses:value>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
                <ses:header>
-                  <ses:name>---------------</ses:name>
-                  <ses:value>----- -------- ------- --------- 
----------</ses:value>
+                  <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</ses:name>
-                  <ses:value>image/gif, image/x-xbitmap, image/jpeg, 
image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, 
application/msword, application/x-shockwave-flash, */*</ses:value>
+                  <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</ses:value>
+                  <ses:value>en-us,en;q=0.5</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>connection</ses:name>
-                  <ses:value>Keep-Alive, TE</ses:value>
+                  <ses:value>keep-alive</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>$Version=0; 
JSESSIONID=912F97F998ECF693268DE28A9815EEA1; $Path=/coreWeb</ses:value>
-               </ses:header>
-               <ses:header>
-                  <ses:name>cookie2</ses:name>
-                  <ses:value>$Version="1"</ses:value>
+                  
<ses:value>JSESSIONID=A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
                   <ses:value>localhost:8080</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>te</ses:name>
-                  <ses:value>trailers, deflate, gzip, compress</ses:value>
-               </ses:header>
-               <ses:header>
-                  <ses:name>testrecorder.playback.testid</ses:name>
-                  <ses:value>39ee6810:1019c58abd2:-7e20</ses:value>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>user-agent</ses:name>
-                  <ses:value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 
5.1) RPT-HTTPClient/0.3-3E</ses:value>
+                  <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>
@@ -100,7 +96,7 @@
         &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page2\");");'>page 
Two&lt;/a>&amp;nbsp;&amp;nbsp;&amp;nbsp;
         &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page3\");");'>page Three&lt;/a>
         &lt;hr>
-        &lt;div  id="divpanel" netui-div-panel="true">
+        &lt;div id="divpanel" netui:divName="DivPanel1" netui-div-panel="true">
             &lt;div  id="page1">
                 Page One&lt;br>
                 &lt;a href="/coreWeb/bugs/cr180865/postback.do">postback&lt;/a>
@@ -131,7 +127,6 @@
    var netui_names = new Object();
 netui_names.page2="page2"
 netui_names.page3="page3"
-netui_names.divpanel="divpanel"
 netui_names.page1="page1"
 
 
@@ -183,9 +178,6 @@
 
 &lt;/html></ses:responseBody>
          </ses:response>
-         <ses:testResults>
-            <ses:testStatus>fail</ses:testStatus>
-         </ses:testResults>
       </ses:test>
       <ses:test>
          <ses:testNumber>2</ses:testNumber>
@@ -194,185 +186,76 @@
             <ses:protocolVersion>1.1</ses:protocolVersion>
             <ses:host>localhost</ses:host>
             <ses:port>8080</ses:port>
-            <ses:uri>/coreWeb/bugs/cr180865/postback.do</ses:uri>
+            <ses:uri>/coreWeb/switchPage.xhr</ses:uri>
             <ses:method>GET</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>netui_divpanel_divpanel</ses:name>
-                  <ses:value>page3</ses:value>
+                  <ses:name>divPanel</ses:name>
+                  <ses:value>DivPanel1</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>firstPage</ses:name>
+                  <ses:value>page2</ses:value>
                </ses:parameter>
             </ses:parameters>
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>912F97F998ECF693268DE28A9815EEA1</ses:value>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
                <ses:header>
-                  <ses:name>---------------</ses:name>
-                  <ses:value>----- -------- ------- --------- 
----------</ses:value>
+                  <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</ses:name>
-                  <ses:value>image/gif, image/x-xbitmap, image/jpeg, 
image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, 
application/msword, application/x-shockwave-flash, */*</ses:value>
+                  <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</ses:value>
+                  <ses:value>en-us,en;q=0.5</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>connection</ses:name>
-                  <ses:value>Keep-Alive, TE</ses:value>
+                  <ses:name>cache-control</ses:name>
+                  <ses:value>no-cache</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>cookie</ses:name>
-                  <ses:value>$Version=0; 
JSESSIONID=912F97F998ECF693268DE28A9815EEA1; $Path=/coreWeb</ses:value>
+                  <ses:name>connection</ses:name>
+                  <ses:value>keep-alive</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>cookie2</ses:name>
-                  <ses:value>$Version="1"</ses:value>
+                  <ses:name>cookie</ses:name>
+                  
<ses:value>JSESSIONID=A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
                   <ses:value>localhost:8080</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>te</ses:name>
-                  <ses:value>trailers, deflate, gzip, compress</ses:value>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>testrecorder.playback.testid</ses:name>
-                  <ses:value>39ee6810:1019c58abd2:-7e20</ses:value>
+                  <ses:name>pragma</ses:name>
+                  <ses:value>no-cache</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>user-agent</ses:name>
-                  <ses:value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 
5.1) RPT-HTTPClient/0.3-3E</ses:value>
+                  <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/bugs/cr180865/index.jsp";>
-        
-
-&lt;script language="JavaScript" type="text/JavaScript">
-&lt;!--
-// define the constructor for the NetUI object
-function NetUI() {
-   this.members = new Object();    // the named object
-}
-
-// create the variable, it will be empty
-var netUI = new NetUI();
-
--->
-&lt;/script>
-
-
-       &lt;script 
src="/coreWeb/resources/beehive/version1/javascript/netui-tree.js">&lt;/script>
-    &lt;body>
-        &lt;p style="color:#339900;">This is a test of the &amp;lt;divPanel>.  
There are three links which change the currently
-        displayed page.  Each 'page' contains a link.  When the link is 
pressed, we hit the postback
-        link and redisplay the page.  What should happen is that the current 
page inside the &amp;lt;divPanel>
-        should still be the same one that was posted back.
-        &lt;hr>
-        &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page1\");");'>page 
One&lt;/a>&amp;nbsp;&amp;nbsp;&amp;nbsp;
-        &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page2\");");'>page 
Two&lt;/a>&amp;nbsp;&amp;nbsp;&amp;nbsp;
-        &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page3\");");'>page Three&lt;/a>
-        &lt;hr>
-        &lt;div  id="divpanel" netui-div-panel="true" 
netui-div-panel-first="page3">
-            &lt;div  id="page1">
-                Page One&lt;br>
-                &lt;a href="/coreWeb/bugs/cr180865/postback.do">postback&lt;/a>
-            &lt;/div>
-            
-            &lt;div  id="page2">            
-                Page Two&lt;br>
-                &lt;a href="/coreWeb/bugs/cr180865/postback.do">postback&lt;/a>
-            &lt;/div>
-            
-            &lt;div  id="page3">            
-                Page Three&lt;br>
-                &lt;a href="/coreWeb/bugs/cr180865/postback.do">postback&lt;/a>
-            &lt;/div>
-        &lt;/div>
-    &lt;/body>
-
-
-&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.page2="page2"
-netui_names.page3="page3"
-netui_names.divpanel="divpanel"
-netui_names.page1="page1"
-
-
-// **** This section contains functions typically run as events ****
-
-
-// Create the NetUI variable and put the webapp name into it
-netUI.webAppName = "/coreWeb";
-
-// This method will init the
-NetUI.prototype.init = function()
-{
-     // create the netUIDivPanel object and initialize it.
-     this.netUIDivPanel = new NetUIDivPanel();
-     this.netUIDivPanel.init();
-
-
-}
-
-netUI.init();
-
-
-// method which will return a real id for a tagId,
-// the tag parameter will be used to find the idScope for
-// containers that may scope their ids
-function getNetuiTagName(id, tag)
-{
-   var idScope = getScopeId(tag);
-   if (idScope == "")
-      return netui_names[id];
-   else
-      return netui_names[idScope  + "__" + id];
-}
-
-// This method will walk the hierarchy from the pass element looking for a 
idScope.
-// The first idScope found will be returned or the empty string if a idScope 
is not found.
-function getScopeId(tag)
-{
-   if (tag == null || tag.getAttribute == null)
-      return "";
-   var attrVal = tag.getAttribute("netui:idScope");
-   if (attrVal != null)
-      return attrVal;
-   return getScopeId(tag.parentNode);
-}
--->
-&lt;/script>
-
-
-&lt;/html></ses:responseBody>
+            <ses:responseBody/>
          </ses:response>
-         <ses:testResults>
-            <ses:testStatus>fail</ses:testStatus>
-         </ses:testResults>
       </ses:test>
       <ses:test>
          <ses:testNumber>3</ses:testNumber>
@@ -381,60 +264,133 @@
             <ses:protocolVersion>1.1</ses:protocolVersion>
             <ses:host>localhost</ses:host>
             <ses:port>8080</ses:port>
-            <ses:uri>/coreWeb/bugs/cr180865/postback.do</ses:uri>
+            <ses:uri>/coreWeb/switchPage.xhr</ses:uri>
             <ses:method>GET</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>netui_divpanel_divpanel</ses:name>
-                  <ses:value>page2</ses:value>
+                  <ses:name>divPanel</ses:name>
+                  <ses:value>DivPanel1</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>firstPage</ses:name>
+                  <ses:value>page3</ses:value>
                </ses:parameter>
             </ses:parameters>
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>912F97F998ECF693268DE28A9815EEA1</ses:value>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
                <ses:header>
-                  <ses:name>---------------</ses:name>
-                  <ses:value>----- -------- ------- --------- 
----------</ses:value>
+                  <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</ses:name>
-                  <ses:value>image/gif, image/x-xbitmap, image/jpeg, 
image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, 
application/msword, application/x-shockwave-flash, */*</ses:value>
+                  <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</ses:value>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cache-control</ses:name>
+                  <ses:value>no-cache</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>connection</ses:name>
-                  <ses:value>Keep-Alive, TE</ses:value>
+                  <ses:value>keep-alive</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>$Version=0; 
JSESSIONID=912F97F998ECF693268DE28A9815EEA1; $Path=/coreWeb</ses:value>
+                  
<ses:value>JSESSIONID=A1191FE085A36272C7DB0D8257F5CD27</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </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>/coreWeb/bugs/cr180865/postback.do</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</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>cookie2</ses:name>
-                  <ses:value>$Version="1"</ses:value>
+                  <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=A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
                   <ses:value>localhost:8080</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>te</ses:name>
-                  <ses:value>trailers, deflate, gzip, compress</ses:value>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>testrecorder.playback.testid</ses:name>
-                  <ses:value>39ee6810:1019c58abd2:-7e20</ses:value>
+                  <ses:name>referer</ses:name>
+                  
<ses:value>http://localhost:8080/coreWeb/bugs/cr180865/Controller.jpf</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>user-agent</ses:name>
-                  <ses:value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 
5.1) RPT-HTTPClient/0.3-3E</ses:value>
+                  <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>
@@ -474,7 +430,7 @@
         &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page2\");");'>page 
Two&lt;/a>&amp;nbsp;&amp;nbsp;&amp;nbsp;
         &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page3\");");'>page Three&lt;/a>
         &lt;hr>
-        &lt;div  id="divpanel" netui-div-panel="true" 
netui-div-panel-first="page2">
+        &lt;div id="divpanel" netui-div-panel-first="page3" 
netui:divName="DivPanel1" netui-div-panel="true">
             &lt;div  id="page1">
                 Page One&lt;br>
                 &lt;a href="/coreWeb/bugs/cr180865/postback.do">postback&lt;/a>
@@ -505,7 +461,6 @@
    var netui_names = new Object();
 netui_names.page2="page2"
 netui_names.page3="page3"
-netui_names.divpanel="divpanel"
 netui_names.page1="page1"
 
 
@@ -557,71 +512,297 @@
 
 &lt;/html></ses:responseBody>
          </ses:response>
-         <ses:testResults>
-            <ses:testStatus>fail</ses:testStatus>
-         </ses:testResults>
       </ses:test>
       <ses:test>
-         <ses:testNumber>4</ses:testNumber>
+         <ses:testNumber>5</ses:testNumber>
          <ses:request>
             <ses:protocol>HTTP</ses:protocol>
             <ses:protocolVersion>1.1</ses:protocolVersion>
             <ses:host>localhost</ses:host>
             <ses:port>8080</ses:port>
-            <ses:uri>/coreWeb/bugs/cr180865/postback.do</ses:uri>
+            <ses:uri>/coreWeb/switchPage.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>divPanel</ses:name>
+                  <ses:value>DivPanel1</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>firstPage</ses:name>
+                  <ses:value>page3</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=A1191FE085A36272C7DB0D8257F5CD27</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>6</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/switchPage.xhr</ses:uri>
             <ses:method>GET</ses:method>
             <ses:parameters>
                <ses:parameter>
-                  <ses:name>netui_divpanel_divpanel</ses:name>
+                  <ses:name>divPanel</ses:name>
+                  <ses:value>DivPanel1</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>firstPage</ses:name>
                   <ses:value>page1</ses:value>
                </ses:parameter>
             </ses:parameters>
             <ses:cookies>
                <ses:cookie>
                   <ses:name>JSESSIONID</ses:name>
-                  <ses:value>912F97F998ECF693268DE28A9815EEA1</ses:value>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:cookie>
             </ses:cookies>
             <ses:headers>
                <ses:header>
-                  <ses:name>---------------</ses:name>
-                  <ses:value>----- -------- ------- --------- 
----------</ses:value>
+                  <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>cache-control</ses:name>
+                  <ses:value>no-cache</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=A1191FE085A36272C7DB0D8257F5CD27</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>7</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/switchPage.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>divPanel</ses:name>
+                  <ses:value>DivPanel1</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>firstPage</ses:name>
+                  <ses:value>page2</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</ses:value>
+               </ses:cookie>
+            </ses:cookies>
+            <ses:headers>
+               <ses:header>
                   <ses:name>accept</ses:name>
-                  <ses:value>image/gif, image/x-xbitmap, image/jpeg, 
image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, 
application/msword, application/x-shockwave-flash, */*</ses:value>
+                  
<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</ses:value>
+                  <ses:value>en-us,en;q=0.5</ses:value>
+               </ses:header>
+               <ses:header>
+                  <ses:name>cache-control</ses:name>
+                  <ses:value>no-cache</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>connection</ses:name>
-                  <ses:value>Keep-Alive, TE</ses:value>
+                  <ses:value>keep-alive</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>cookie</ses:name>
-                  <ses:value>$Version=0; 
JSESSIONID=912F97F998ECF693268DE28A9815EEA1; $Path=/coreWeb</ses:value>
+                  
<ses:value>JSESSIONID=A1191FE085A36272C7DB0D8257F5CD27</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>8</ses:testNumber>
+         <ses:request>
+            <ses:protocol>HTTP</ses:protocol>
+            <ses:protocolVersion>1.1</ses:protocolVersion>
+            <ses:host>localhost</ses:host>
+            <ses:port>8080</ses:port>
+            <ses:uri>/coreWeb/bugs/cr180865/postback.do</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters/>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</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>cookie2</ses:name>
-                  <ses:value>$Version="1"</ses:value>
+                  <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=A1191FE085A36272C7DB0D8257F5CD27</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>host</ses:name>
                   <ses:value>localhost:8080</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>te</ses:name>
-                  <ses:value>trailers, deflate, gzip, compress</ses:value>
+                  <ses:name>keep-alive</ses:name>
+                  <ses:value>300</ses:value>
                </ses:header>
                <ses:header>
-                  <ses:name>testrecorder.playback.testid</ses:name>
-                  <ses:value>39ee6810:1019c58abd2:-7e20</ses:value>
+                  <ses:name>referer</ses:name>
+                  
<ses:value>http://localhost:8080/coreWeb/bugs/cr180865/postback.do</ses:value>
                </ses:header>
                <ses:header>
                   <ses:name>user-agent</ses:name>
-                  <ses:value>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 
5.1) RPT-HTTPClient/0.3-3E</ses:value>
+                  <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>
@@ -661,7 +842,7 @@
         &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page2\");");'>page 
Two&lt;/a>&amp;nbsp;&amp;nbsp;&amp;nbsp;
         &lt;a href="" onclick='return 
netUI.action("divpanel.showPage(\"page3\");");'>page Three&lt;/a>
         &lt;hr>
-        &lt;div  id="divpanel" netui-div-panel="true" 
netui-div-panel-first="page1">
+        &lt;div id="divpanel" netui-div-panel-first="page2" 
netui:divName="DivPanel1" netui-div-panel="true">
             &lt;div  id="page1">
                 Page One&lt;br>
                 &lt;a href="/coreWeb/bugs/cr180865/postback.do">postback&lt;/a>
@@ -692,7 +873,6 @@
    var netui_names = new Object();
 netui_names.page2="page2"
 netui_names.page3="page3"
-netui_names.divpanel="divpanel"
 netui_names.page1="page1"
 
 
@@ -744,14 +924,86 @@
 
 &lt;/html></ses:responseBody>
          </ses:response>
-         <ses:testResults>
-            <ses:testStatus>fail</ses:testStatus>
-         </ses:testResults>
+      </ses:test>
+      <ses:test>
+         <ses:testNumber>9</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/switchPage.xhr</ses:uri>
+            <ses:method>GET</ses:method>
+            <ses:parameters>
+               <ses:parameter>
+                  <ses:name>divPanel</ses:name>
+                  <ses:value>DivPanel1</ses:value>
+               </ses:parameter>
+               <ses:parameter>
+                  <ses:name>firstPage</ses:name>
+                  <ses:value>page2</ses:value>
+               </ses:parameter>
+            </ses:parameters>
+            <ses:cookies>
+               <ses:cookie>
+                  <ses:name>JSESSIONID</ses:name>
+                  <ses:value>A1191FE085A36272C7DB0D8257F5CD27</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>cache-control</ses:name>
+                  <ses:value>no-cache</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=A1191FE085A36272C7DB0D8257F5CD27</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>pragma</ses:name>
+                  <ses:value>no-cache</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/>
+         </ses:response>
       </ses:test>
    </ses:tests>
-   <ses:endDate>22 Jan 2005, 02:44:44.561 PM MST</ses:endDate>
-   <ses:sessionStatus>fail</ses:sessionStatus>
-   <ses:testCount>4</ses:testCount>
-   <ses:passedCount>0</ses:passedCount>
-   <ses:failedCount>4</ses:failedCount>
+   <ses:endDate>25 Jan 2005, 12:30:45.382 PM MST</ses:endDate>
+   <ses:testCount>9</ses:testCount>
 </ses:recorderSession>

Reply via email to