Author: dolander
Date: Sat Nov  6 08:10:21 2004
New Revision: 56768

Added:
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/ByRef.java
Modified:
   
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/util/PageflowTagUtils.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/HtmlUtils.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Anchor.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Button.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxOption.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/FileUpload.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Hidden.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Html.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Image.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageAnchor.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageButton.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/JavaScriptUtils.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Label.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonOption.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ScriptContainer.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/SelectOption.java
   
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Span.java
Log:
Cleanup tags




Modified: 
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/util/PageflowTagUtils.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/util/PageflowTagUtils.java
     (original)
+++ 
incubator/beehive/trunk/netui/src/pageflow/org/apache/beehive/netui/pageflow/util/PageflowTagUtils.java
     Sat Nov  6 08:10:21 2004
@@ -109,7 +109,6 @@
         String templateType = URLRewriter.RESOURCE_UNSECURE;
 
         if (URLRewriterService.needsSecure(request, servletContext, url, true))
-        if (URLRewriterService.needsSecure(request, servletContext, url, true))
             templateType = URLRewriter.RESOURCE_SECURE;
 
         url = URLRewriterService.rewriteURL(servletContext, request, response, 
url, templateType);
@@ -119,31 +118,30 @@
 
     public static String createActionURL(HttpServletRequest servletRequest, 
String qualifiedAction)
     {
-        StringBuilder value = new StringBuilder(qualifiedAction.length() + 16);
-
         String pageURI = InternalUtils.getDecodedURI( servletRequest );
         int lastSlash = pageURI.lastIndexOf( '/' );
         if ( lastSlash != -1 )
         {
+            StringBuilder value = new StringBuilder(qualifiedAction.length() + 
16);
             value.append( pageURI.substring( 0, lastSlash ) );
+            value.append(qualifiedAction);
+            return value.toString();
         }
-        value.append(qualifiedAction);
-
-        return value.toString();
+        return qualifiedAction;
     }
 
     public static String createActionPath(HttpServletRequest request, String 
qualifiedAction)
     {
-        StringBuilder value = new StringBuilder(qualifiedAction.length() + 16);
 
         ModuleConfig appConfig = (ModuleConfig) 
request.getAttribute(Globals.MODULE_KEY);
         if (appConfig != null)
         {
+            StringBuilder value = new StringBuilder(qualifiedAction.length() + 
16);
             value.append(appConfig.getPrefix());
+            value.append(qualifiedAction);
+            return value.toString();
         }
-        value.append(qualifiedAction);
-
-        return value.toString();
+        return qualifiedAction;
     }
 
     public static String qualifiedAction(ServletContext servletContext, String 
action)
@@ -168,8 +166,7 @@
             }
             else if (servletMapping.endsWith("/*"))
             {
-                sb.append(servletMapping.substring
-                             (0, servletMapping.length() - 2));
+                sb.append(servletMapping.substring(0, servletMapping.length() 
- 2));
                 sb.append(actionMapping);
             }
             else if (servletMapping.equals("/"))

Added: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/ByRef.java
==============================================================================
--- (empty file)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/ByRef.java
        Sat Nov  6 08:10:21 2004
@@ -0,0 +1,18 @@
+package org.apache.beehive.netui.tags;
+
+public class ByRef
+{
+    private Object _ref;
+
+    public Object getRef() {
+        return _ref;
+    }
+
+    public void setRef(Object ref) {
+        _ref = ref;
+    }
+
+    public boolean isNull() {
+        return (_ref == null);
+    }
+}

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/HtmlUtils.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/HtmlUtils.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/HtmlUtils.java
    Sat Nov  6 08:10:21 2004
@@ -59,7 +59,6 @@
             return;
 
         // convert the string
-        boolean needsToChange = false;
         int numChars = value.length();
         char c;
         char prev = 0;
@@ -71,29 +70,23 @@
             c = value.charAt(i);
             switch (c) {
             case '<':
-                needsToChange = true;
                 result.append("&lt;");
                 break;
             case '>':
-                needsToChange = true;
                 result.append("&gt;");
                 break;
             case '&':
-                needsToChange = true;
                 result.append("&amp;");
                 break;
             case '"':
-                needsToChange = true;
                 result.append("&quot;");
                 break;
             case '\'':
-                needsToChange = true;
                 result.append("&#39;");
                 break;
             case ' ':
                 if (markupHTMLSpaceReturn) {
                     if (prev == ' ') {
-                        needsToChange = true;
                         result.append("&nbsp;");
                     }
                     else
@@ -104,7 +97,6 @@
                 break;
             case '\n':
                 if (markupHTMLSpaceReturn) {
-                    needsToChange = true;
                     result.append("<br />");
                 }
                 else

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Anchor.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Anchor.java
  (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Anchor.java
  Sat Nov  6 08:10:21 2004
@@ -23,12 +23,12 @@
 import org.apache.beehive.netui.pageflow.util.URLRewriterService;
 import org.apache.beehive.netui.tags.HtmlUtils;
 import org.apache.beehive.netui.tags.IScriptReporter;
+import org.apache.beehive.netui.tags.ByRef;
 import org.apache.beehive.netui.tags.rendering.*;
 import org.apache.beehive.netui.util.Bundle;
 import org.apache.beehive.netui.util.FileUtils;
 import org.apache.beehive.netui.util.ParamHelper;
 import org.apache.beehive.netui.util.logging.Logger;
-import org.apache.struts.util.ResponseUtils;
 
 import javax.servlet.ServletContext;
 import javax.servlet.ServletRequest;
@@ -512,16 +512,15 @@
             return reportAndExit(EVAL_PAGE);
 
         // build the anchor into the results
-        StringBuilder script = new StringBuilder(32);
-        StringBuilderRenderAppender scriptWriter = new 
StringBuilderRenderAppender(script);
+        ByRef script = new ByRef();
 
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         HttpServletRequest request = (HttpServletRequest) 
pageContext.getRequest();
         TagRenderingBase trb = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.ANCHOR_TAG, request);
 
-        if (!createAnchorBeginTag(request, scriptWriter, trb, writer)) {
-            if (script.length() > 0)
-                ResponseUtils.write(pageContext, script.toString());
+        if (!createAnchorBeginTag(request, script, trb, writer)) {
+            if (!script.isNull())
+                write(script.getRef().toString());
             return reportAndExit(EVAL_PAGE);
         }
 
@@ -531,8 +530,8 @@
         assert(trb != null) : "trb is null";
         trb.doEndTag(writer);
 
-        if (script.length() > 0)
-            write(script.toString());
+        if (!script.isNull())
+            write(script.getRef().toString());
 
         // Render the remainder to the output stream
         localRelease();
@@ -542,12 +541,12 @@
     /**
      * This method will create the &lt;a> portion of an anchor.  It is called 
by subclasses, for example, the
      * <code>ImageAnchor</code> relies on this code to generate the  &lt;a>.
-     * @param script a <code>StringBuilder</code> that will contain any 
JavaScript that may need to be added
+     * @param scriptRef a <code>ByRef&lt;String></code> that will contain any 
JavaScript that may need to be added
      *               to the generated HTML response.
      * @return a boolean value indicating if an error occur creating the 
anchor.
      * @throws JspException
      */
-    protected final boolean createAnchorBeginTag(HttpServletRequest request, 
AbstractRenderAppender script,
+    protected final boolean createAnchorBeginTag(HttpServletRequest request, 
ByRef scriptRef,
                                                  TagRenderingBase trb, 
AbstractRenderAppender writer)
             throws JspException
     {
@@ -727,11 +726,16 @@
         trb.doStartTag(writer, _state);
 
         //Emit javascript if this anchor needs to sumbit the form
-        if (_formSubmit && formAction != null) {
-            jsu.writeAnchorFormSubmit(getScriptReporter(),script);
+        if (_formSubmit && formAction != null || idScript != null) {
+            StringBuilder script = new StringBuilder(32);
+            StringBuilderRenderAppender scriptWriter = new 
StringBuilderRenderAppender(script);
+
+            if (_formSubmit && formAction != null)
+                jsu.writeAnchorFormSubmit(getScriptReporter(),scriptWriter);
+            if (idScript != null)
+                scriptWriter.append(idScript);
+            scriptRef.setRef(script.toString());
         }
-        if (idScript != null)
-            script.append(idScript);
 
         // create the javaScript
         return true;

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Body.java
    Sat Nov  6 08:10:21 2004
@@ -38,6 +38,7 @@
 {
     private BodyTag.State _state = new BodyTag.State();
     private TagRenderingBase _br;
+    private WriteRenderAppender _writer;
 
     /**
      * Return the name of the Tag.
@@ -183,13 +184,10 @@
      */
     public int doStartTag() throws JspException
     {
-        //StringBuilder results = new StringBuilder(32);
-
         // render the header...
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
-        _br = TagRenderingBase.Factory.getRendering(TagRenderingBase.BODY_TAG,
-                pageContext.getRequest());
-        _br.doStartTag(writer, _state);
+        _writer = new WriteRenderAppender(pageContext);
+        _br = TagRenderingBase.Factory.getRendering(TagRenderingBase.BODY_TAG, 
pageContext.getRequest());
+        _br.doStartTag(_writer, _state);
 
         return EVAL_BODY_INCLUDE;
     }
@@ -200,8 +198,6 @@
      */
     public int doEndTag() throws JspException
     {
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
-
         // if there were errors lets report them.
         if (hasErrors()) {
             reportErrors();
@@ -219,11 +215,11 @@
 
             // write out the script before the end tag.
             if (sr.isInitScriptWritten()) {
-                sr.writeScript(writer);
+                sr.writeScript(_writer);
             }
         }
 
-        _br.doEndTag(writer);
+        _br.doEndTag(_writer);
 
         // Evaluate the remainder of this page
         localRelease();
@@ -235,5 +231,6 @@
         super.localRelease();
         _state.clear();
         _br = null;
+        _writer = null;
     }
 }

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Button.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Button.java
  (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Button.java
  Sat Nov  6 08:10:21 2004
@@ -226,7 +226,6 @@
         _state.value = _value;
 
         // Generate an HTML element
-        //StringBuilder results = new StringBuilder(128);
         _state.disabled = isDisabled();
 
         if (_action != null) {
@@ -260,11 +259,10 @@
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         TagRenderingBase br = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.INPUT_SUBMIT_TAG, 
request);
         br.doStartTag(writer, _state);
+        br.doEndTag(writer);
 
         if (idScript != null)
             write(idScript);
-
-        //write(results.toString());
 
         // Evaluate the remainder of this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
        (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBox.java
        Sat Nov  6 08:10:21 2004
@@ -254,14 +254,12 @@
             registerTagError(Bundle.getString("Tags_CheckBoxGroupChildError"), 
null);
 
         Object val = evaluateDataSource();
-        if (hasErrors()) {
+        if (hasErrors())
             return reportAndExit(EVAL_PAGE);
-        }
 
         String realName = doNaming();
-        if (hasErrors()) {
+        if (hasErrors())
             return reportAndExit(EVAL_PAGE);
-        }
 
         String hiddenParamName = realName + OLDVALUE_SUFFIX;
         ServletRequest req = pageContext.getRequest();
@@ -287,11 +285,11 @@
         }
         _state.disabled = isDisabled();
 
-        //StringBuilder results = new StringBuilder(128);
         idScript = renderTagId(_state, realName, false, true);
 
         //Create a hidden field to store the CheckBox oldValue
         String oldValue = req.getParameter(realName);
+        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
 
         // if the checkbox is disabled we need to not right out the hidden
         // field because it can cause the default state to change from
@@ -304,7 +302,6 @@
             else {
                 _hiddenState.value = oldValue;
             }
-            WriteRenderAppender writer = new WriteRenderAppender(pageContext);
             TagRenderingBase hiddenTag = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.INPUT_HIDDEN_TAG, req);
             hiddenTag.doStartTag(writer, _hiddenState);
             hiddenTag.doEndTag(writer);
@@ -315,14 +312,11 @@
         if (_dataSource != null)
             _state.name = realName;
 
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         TagRenderingBase br = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.INPUT_BOOLEAN_TAG, req);
         br.doStartTag(writer, _state);
 
         if (idScript != null)
             write(idScript);
-
-        //write(results.toString());
 
         // Continue processing this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
   (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxGroup.java
   Sat Nov  6 08:10:21 2004
@@ -159,6 +159,7 @@
     private StringBuilder _saveBody;
 
     private static final List _internalNamingChain;
+    private WriteRenderAppender _writer;
 
     static
     {
@@ -338,7 +339,7 @@
         // if the checkbox group is disabled do not write out the
         // hidden field.
         //StringBuilder results = new StringBuilder(64);
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
+        _writer = new WriteRenderAppender(pageContext);
         if (!_repeater && !_disabled) {
 
             //Create hidden field for state tracking
@@ -349,12 +350,12 @@
             _state.value = "true";
 
             TagRenderingBase hiddenTag = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.INPUT_HIDDEN_TAG, req);
-            hiddenTag.doStartTag(writer, _state);
-            hiddenTag.doEndTag(writer);
+            hiddenTag.doStartTag(_writer, _state);
+            hiddenTag.doEndTag(_writer);
         }
 
         if (isVertical())
-            _cr.TABLE(writer);
+            _cr.TABLE(_writer);
 
         // if this is a repeater then we shouid prime the pump...
         _dynamicAttrs = evaluateOptionsDataSource();
@@ -374,14 +375,13 @@
                     break;
             }
             if (isVertical())
-                _cr.TR_TD(writer);
+                _cr.TR_TD(_writer);
 
             DataAccessProviderStack.addDataAccessProvider(this, pageContext);
         }
         _saveBody = new StringBuilder(128);
 
         // Continue processing this page
-        //write(results.toString());
         return EVAL_BODY_BUFFERED;
 
     }
@@ -436,7 +436,6 @@
             return reportAndExit(EVAL_PAGE);
 
         ServletRequest req = pageContext.getRequest();
-        //StringBuilder results = new StringBuilder(128);
         if (_cr == null)
             _cr = TagRenderingBase.Factory.getConstantRendering(req);
 
@@ -450,11 +449,10 @@
             write(_saveBody.toString());
 
         // if this is a repeater then we have created the content in the body 
so we write that
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         if (_repeater) {
             // Render a tag representing the end of our current form
             if (isVertical())
-                _cr.end_TABLE(writer);
+                _cr.end_TABLE(_writer);
 
             if (idScript != null)
                 write(idScript);
@@ -475,13 +473,12 @@
                 String optionDisplay = "";
                 if (dynamicCheckboxesMap.get(optionValue) != null)
                     optionDisplay = 
dynamicCheckboxesMap.get(optionValue).toString();
-                addOption(writer, INPUT_CHECKBOX, optionValue.toString(), 
optionDisplay, idx++, altText, accessKey, _disabled);
+                addOption(_writer, INPUT_CHECKBOX, optionValue.toString(), 
optionDisplay, idx++, altText, accessKey, _disabled);
 
                 if (hasErrors()) {
                     reportErrors();
                     if (isVertical()) {
-                        _cr.end_TABLE(writer);
-                        //write(results.toString());
+                        _cr.end_TABLE(_writer);
                     }
                     localRelease();
                     return EVAL_PAGE;
@@ -500,18 +497,17 @@
 
                 if (o instanceof GroupOption) {
                     GroupOption go = (GroupOption) o;
-                    addOption(writer, INPUT_CHECKBOX, go.getValue(), 
go.getName(), idx++, go.getAlt(), go.getAccessKey(), _disabled);
+                    addOption(_writer, INPUT_CHECKBOX, go.getValue(), 
go.getName(), idx++, go.getAlt(), go.getAccessKey(), _disabled);
                 }
                 else {
                     String checkboxValue = o.toString();
-                    addOption(writer, INPUT_CHECKBOX, checkboxValue, 
checkboxValue, idx++, altText, accessKey, _disabled);
+                    addOption(_writer, INPUT_CHECKBOX, checkboxValue, 
checkboxValue, idx++, altText, accessKey, _disabled);
                 }
 
                 if (hasErrors()) {
                     reportErrors();
                     if (isVertical()) {
-                        _cr.end_TABLE(writer);
-                        //write(results.toString());
+                        _cr.end_TABLE(_writer);
                     }
                     localRelease();
                     return EVAL_PAGE;
@@ -521,12 +517,11 @@
         }
 
         if (isVertical())
-            _cr.end_TABLE(writer);
+            _cr.end_TABLE(_writer);
 
         if (idScript != null)
             write(idScript);
 
-        //write(results.toString());
         localRelease();
         return EVAL_PAGE;
     }

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxOption.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxOption.java
  (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/CheckBoxOption.java
  Sat Nov  6 08:10:21 2004
@@ -212,8 +212,7 @@
         ConstantRendering cr = 
TagRenderingBase.Factory.getConstantRendering(req);
         boolean repeat = parent.isRepeater();
 
-        // StringBuilder for the results
-        //StringBuilder results = new StringBuilder(128);
+        // create the writer
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         if (!repeat && parent.isVertical()) {
             cr.TR_TD(writer);
@@ -265,7 +264,6 @@
         if (parent.isVertical()) {
             cr.end_TD_TR(writer);
         }
-        //write(results.toString());
 
         // Continue evaluating this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/FileUpload.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/FileUpload.java
      (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/FileUpload.java
      Sat Nov  6 08:10:21 2004
@@ -211,20 +211,6 @@
     }
 
     /**
-     * Save the body content of the FileUpLoad. In this case any body content 
will
-     * be thrown away.
-     * @throws JspException if a JSP exception has occurred
-     */
-    public int doAfterBody() throws JspException
-    {
-
-        if (bodyContent != null) {
-            bodyContent.clearBody();
-        }
-        return SKIP_BODY;
-    }
-
-    /**
      * Render the FileUpload.
      * @throws JspException if a JSP exception has occurred
      */
@@ -260,15 +246,12 @@
         if (hasErrors())
             return reportAndExit(EVAL_PAGE);
 
-        //StringBuilder results = new StringBuilder(32);
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         TagRenderingBase br = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.INPUT_FILE_TAG, req);
         br.doStartTag(writer, _state);
 
         if (idScript != null)
             write(idScript);
-
-        //write(results.toString());
 
         localRelease();
         return EVAL_PAGE;

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Form.java
    Sat Nov  6 08:10:21 2004
@@ -720,25 +720,10 @@
 
         _state.action = actionUrl;
 
-
-        //int size = (_text != null) ? _text.length() + 64 : 128;
-        //StringBuilder results = new StringBuilder(size);
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         TagRenderingBase br = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.FORM_TAG, request);
         br.doStartTag(writer, _state);
 
-        // for the form, lets output the contents of the body and the end tag 
and exit if there are errors
-        //if (hasErrors()) {
-        //    reportErrors();
-        //    if (_text != null)
-        //        results.append(_text);
-        //    br.doEndTag(results);
-        //    write(results.toString());
-
-        //    localRelease();
-        //    return EVAL_PAGE;
-        //}
-
         // Add a transaction token (if present in our session)
         HttpSession session = pageContext.getSession();
         if (session != null) {
@@ -820,7 +805,6 @@
         if (idScript != null)
             write(idScript);
 
-        //write(results.toString());
         localRelease();
         return EVAL_PAGE;
     }

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Hidden.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Hidden.java
  (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Hidden.java
  Sat Nov  6 08:10:21 2004
@@ -159,8 +159,6 @@
         }
 
         // Create an appropriate "input" element based on our parameters
-        //StringBuilder results = new StringBuilder(32);
-
         if (_dataSource != null) {
             name = doNaming();
             _state.name = name;
@@ -169,7 +167,7 @@
         if (_value != null) {
             StringBuilder sb = new StringBuilder(_value.length() + 16);
             StringBuilderRenderAppender sbAppend = new 
StringBuilderRenderAppender(sb);
-            HtmlUtils.filter(_value,sbAppend);
+            HtmlUtils.filter(_value, sbAppend);
             _state.value = sb.toString();
         }
 
@@ -185,21 +183,17 @@
         if (_state.id != null) {
             idScript = renderTagId(_state, null, true, false);
         }
+        if (hasErrors())
+            return reportAndExit(SKIP_BODY);
 
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         TagRenderingBase hiddenTag = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.INPUT_HIDDEN_TAG, req);
-        if (hasErrors()) {
-            reportErrors();
-            localRelease();
-            return SKIP_BODY;
-        }
+
         hiddenTag.doStartTag(writer, _state);
         hiddenTag.doEndTag(writer);
 
         if (idScript != null)
             write(idScript);
-
-        //write(results.toString());
 
         // Continue processing this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Html.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Html.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Html.java
    Sat Nov  6 08:10:21 2004
@@ -106,6 +106,7 @@
 
     private HtmlTag.State _state = new HtmlTag.State();
     private TagRenderingBase _br;
+    private WriteRenderAppender _writer;
 
     private boolean _useLocale = false;     // include 
xml:lang=defaultLocale.getLanguage()
     private ArrayList _errors;              // errors
@@ -214,15 +215,12 @@
         }
 
         // write out the html...
-        //StringBuilder sb = new StringBuilder(32);
         _state.lang = currentLocale.getLanguage();
 
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
+        _writer = new WriteRenderAppender(pageContext);
         _br = TagRenderingBase.Factory.getRendering(TagRenderingBase.HTML_TAG, 
req);
-        _br.doStartTag(writer, _state);
-        write("\n");
-
-        //write(sb.toString());
+        _br.doStartTag(_writer, _state);
+        _writer.append("\n");
 
         // allow the super class to write out the <div>
         super.doStartTag();
@@ -254,19 +252,18 @@
 
         // @todo: this should also be written out by the body tag if it is 
present
         if (getScopeId() != null) {
-            write("</div>");
+            _writer.append("</div>");
         }
 
         // the script can be written out by another tag,  typically this would 
be the <body> tag.
         // If it hasn't been written out, then we will right it out now.
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         if (!isScriptWritten() && isInitScriptWritten()) {
-            writeScript(writer);
+            writeScript(_writer);
         }
 
         // close the html tag
-        write("\n");
-        _br.doEndTag(writer);
+         _writer.append("\n");
+        _br.doEndTag(_writer);
         localRelease();
         return EVAL_PAGE;
     }
@@ -381,12 +378,12 @@
 
         _state.clear();
         _br = null;
+        _writer = null;
 
         _useLocale = false;
         _errors = null;
         _containerErrors = null;
         _uniqueId = 0;
-
         pageContext.getRequest().removeAttribute(HTML_TAG_ID);
     }
 }

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Image.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Image.java
   (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Image.java
   Sat Nov  6 08:10:21 2004
@@ -301,7 +301,6 @@
         String scriptId = null;
 
         // Generate the name definition or image element
-        //StringBuilder results = new StringBuilder(128);
 
         // the src attribute
         String srcurl = url(_state.src);
@@ -334,8 +333,6 @@
 
         if (scriptId != null)
             write(scriptId);
-
-        //write(results.toString());
 
         // Evaluate the remainder of this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageAnchor.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageAnchor.java
     (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageAnchor.java
     Sat Nov  6 08:10:21 2004
@@ -19,6 +19,7 @@
 
 import org.apache.beehive.netui.pageflow.util.PageflowTagUtils;
 import org.apache.beehive.netui.tags.IHtmlAccessable;
+import org.apache.beehive.netui.tags.ByRef;
 import org.apache.beehive.netui.tags.rendering.*;
 import org.apache.beehive.netui.util.Bundle;
 
@@ -403,25 +404,20 @@
     public int doEndTag() throws JspException
     {
         // report errors that may have occurred when the required attributes 
are being set
-        if (hasErrors()) {
-            reportErrors();
-            localRelease();
-            return EVAL_PAGE;
-        }
+        if (hasErrors())
+            return reportAndExit(EVAL_PAGE);
 
         HttpServletRequest req = (HttpServletRequest) pageContext.getRequest();
 
         // build the anchor into the results
-        StringBuilder script = new StringBuilder(128);
-        StringBuilderRenderAppender scriptWriter = new 
StringBuilderRenderAppender(script);
-
         // render the anchor tag
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         TagRenderingBase trb = 
TagRenderingBase.Factory.getRendering(TagRenderingBase.ANCHOR_TAG, req);
-        if (!createAnchorBeginTag(req, scriptWriter, trb, writer)) {
+        ByRef script = new ByRef();
+        if (!createAnchorBeginTag(req, script, trb, writer)) {
             reportErrors();
-            if (script.length() > 0)
-                write(script.toString());
+            if (!script.isNull())
+                write(script.getRef().toString());
             localRelease();
             return EVAL_PAGE;
         }
@@ -453,10 +449,9 @@
 
         // write the end tag
         trb.doEndTag(writer);
-        if (script.length() > 0)
-            write(script.toString());
+        if (!script.isNull())
+            write(script.getRef().toString());
 
-        //write(results.toString());
         localRelease();
         return EVAL_PAGE;
     }

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageButton.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageButton.java
     (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ImageButton.java
     Sat Nov  6 08:10:21 2004
@@ -290,7 +290,6 @@
         ServletRequest req = pageContext.getRequest();
         String scriptId = null;
         String tmp = null;
-        //StringBuilder results = new StringBuilder(128);
 
         // we assume that tagId will over have override id if both
         // are defined.
@@ -335,8 +334,6 @@
 
         if (scriptId != null)
             write(scriptId);
-
-        //write(results.toString());
 
         // Evaluate the remainder of this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/JavaScriptUtils.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/JavaScriptUtils.java
 (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/JavaScriptUtils.java
 Sat Nov  6 08:10:21 2004
@@ -213,7 +213,7 @@
     {
         if (_bundle == null)
             _bundle = ResourceBundle.getBundle(BUNDLE_NAME);
-        ;
+
         return _bundle;
     }
 

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Label.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Label.java
   (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Label.java
   Sat Nov  6 08:10:21 2004
@@ -112,8 +112,6 @@
             usingDefault = true;
         }
 
-        //StringBuilder results = new StringBuilder(64);
-
         // we assume that tagId will over have override id if both
         // are defined.
         String tagId = getTagId();
@@ -145,8 +143,6 @@
 
         if (scriptId != null)
             write(scriptId);
-
-        //write(results.toString());
 
         localRelease();
         return EVAL_PAGE;

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
        (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonGroup.java
        Sat Nov  6 08:10:21 2004
@@ -156,7 +156,8 @@
     private String _match;                      // The actual values we will 
match against, calculated in doStartTag().
     private String _defaultRadio;               //
     private Object _dyanmicAttrs;               // The optionsDataSource object
-    private StringBuilder _saveBody;       // The body text
+    private StringBuilder _saveBody;            // The body text
+    private WriteRenderAppender _writer;
 
 
     private static final List _internalNamingChain;
@@ -270,10 +271,10 @@
         ServletRequest req = pageContext.getRequest();
         if (_cr == null)
             _cr = TagRenderingBase.Factory.getConstantRendering(req);
-        //StringBuilder results = new StringBuilder(64);
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
+
+        _writer = new WriteRenderAppender(pageContext);
         if (isVertical()) {
-            _cr.TABLE(writer);
+            _cr.TABLE(_writer);
         }
 
         // if this is a repeater then we shouid prime the pump...
@@ -294,7 +295,7 @@
                     break;
             }
             if (isVertical())
-                _cr.TR_TD(writer);
+                _cr.TR_TD(_writer);
 
             DataAccessProviderStack.addDataAccessProvider(this, pageContext);
         }
@@ -361,7 +362,6 @@
             _cr = TagRenderingBase.Factory.getConstantRendering(req);
 
         //StringBuilder results = new StringBuilder(128);
-        WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         if (_saveBody != null)
             write(_saveBody.toString());
 
@@ -369,7 +369,7 @@
         if (_repeater) {
             // Render a tag representing the end of our current form
             if (isVertical())
-                _cr.end_TABLE(writer);
+                _cr.end_TABLE(_writer);
 
             if (idScript != null)
                 write(idScript);
@@ -394,7 +394,7 @@
                     optionDisplay = "";
                 }
 
-                addOption(writer, INPUT_RADIO, optionValue.toString(), 
optionDisplay, idx++, altText, accessKey, _disabled);
+                addOption(_writer, INPUT_RADIO, optionValue.toString(), 
optionDisplay, idx++, altText, accessKey, _disabled);
                 if (hasErrors()) {
                     reportErrors();
                     localRelease();
@@ -416,11 +416,11 @@
 
                 if (o instanceof GroupOption) {
                     GroupOption go = (GroupOption) o;
-                    addOption(writer, INPUT_RADIO, go.getValue(), 
go.getName(), idx++, go.getAlt(), go.getAccessKey(), _disabled);
+                    addOption(_writer, INPUT_RADIO, go.getValue(), 
go.getName(), idx++, go.getAlt(), go.getAccessKey(), _disabled);
                 }
                 else {
                     String radioValue = o.toString();
-                    addOption(writer, INPUT_RADIO, radioValue, radioValue, 
idx++, altText, accessKey, _disabled);
+                    addOption(_writer, INPUT_RADIO, radioValue, radioValue, 
idx++, altText, accessKey, _disabled);
                 }
                 if (hasErrors()) {
                     reportErrors();
@@ -432,7 +432,7 @@
         }
 
         if (isVertical()) {
-            _cr.end_TABLE(writer);
+            _cr.end_TABLE(_writer);
         }
 
         if (idScript != null)

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonOption.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonOption.java
       (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/RadioButtonOption.java
       Sat Nov  6 08:10:21 2004
@@ -205,7 +205,6 @@
         boolean repeat = parent.isRepeater();
 
         // Generate an HTML <input type='radio'> element
-        //StringBuilder results = new StringBuilder(128);
         WriteRenderAppender writer = new WriteRenderAppender(pageContext);
         if (parent.isVertical()) {
             cr.TR_TD(writer);
@@ -224,7 +223,6 @@
 
         // if this is in a repeater, then we only output the <input tag>
         if (repeat) {
-            //write(results.toString());
             localRelease();
             return EVAL_PAGE;
         }
@@ -247,8 +245,6 @@
         if (parent.isVertical()) {
             cr.end_TD_TR(writer);
         }
-
-        //write(results.toString());
 
         // Continue evaluating this page
         localRelease();

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ScriptContainer.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ScriptContainer.java
 (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/ScriptContainer.java
 Sat Nov  6 08:10:21 2004
@@ -24,7 +24,6 @@
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.jsp.JspException;
-import javax.servlet.jsp.PageContext;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
  (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Select.java
  Sat Nov  6 08:10:21 2004
@@ -767,18 +767,14 @@
         // if we are repeating then the body contained the options so we can 
exit here
         if (_repeater) {
 
-            if (hasErrors()) {
-                reportErrors();
-                localRelease();
-                return EVAL_PAGE;
-            }
+            if (hasErrors())
+                return reportAndExit(EVAL_PAGE);
+
             br.doEndTag(writer);
 
             if (scriptId != null)
                 write(scriptId);
 
-            //write(results.toString());
-
             // Continue processing this page
             localRelease();
             return EVAL_PAGE;
@@ -840,7 +836,6 @@
 
         super.localRelease();
         _state.clear();
-        //_optionState.clear();
 
         _defaultSelections = null;
         _formatters = null;

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/SelectOption.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/SelectOption.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/SelectOption.java
    Sat Nov  6 08:10:21 2004
@@ -306,8 +306,6 @@
         if (scriptId != null)
             write(scriptId);
 
-        //write(results.toString());
-
         // Continue evaluating this page
         localRelease();
         return EVAL_PAGE;

Modified: 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Span.java
==============================================================================
--- 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Span.java
    (original)
+++ 
incubator/beehive/trunk/netui/src/tags-html/org/apache/beehive/netui/tags/html/Span.java
    Sat Nov  6 08:10:21 2004
@@ -147,8 +147,6 @@
             }
         }
 
-        //StringBuilder results = new StringBuilder(64);
-
         // we assume that tagId will over have override id if both
         // are defined.
         String tagId = getTagId();

Reply via email to