You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beehive.apache.org by ek...@apache.org on 2005/05/19 21:28:45 UTC

svn commit: r170981 [2/3] - in /incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding: bundle/ cellrepeater/ datagrid/ invoke/ message/ pageinput/ repeater/ repeater/pad/ script/ xml/

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/Rows.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/Rows.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/Rows.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/Rows.java Thu May 19 12:28:44 2005
@@ -75,6 +75,40 @@
  * </ul>
  * </p>
  * @jsptagref.tagdescription
+ * <p>
+ * The Rows tag is used to render a table row(s) that contain the data from a data set displayed
+ * in a data grid.  The rows rendered here render after the header reders with the {@link Header} and before
+ * the footer renders in the {@link Footer}.  The body of this tag usually contains the data grid's "cell" tags
+ * which are used to render HTML table cells inside of the rows rendered by this tag.  Such tags include:
+ * <ul>
+ * <li>{@link AnchorCell} which is used to render anchors</li>
+ * <li>{@link ImageAnchorCell} which is used to render clickable images</li>
+ * <li>{@link ImageCell} which is used to render an image</li>
+ * <li>{@link SpanCell} which is used to render an HTML span with data bound content</li>
+ * <li>{@link TemplateCell} which can contain arbitrary content for {@link javax.servlet.jsp.tagext.SimpleTag}</li>
+ * </ul>
+ * </p>
+ * <p>
+ * The attribute setters in this class are used to add attributes to the &lt;tbody&gt; tag which will be rendered
+ * when row groups are enabled.  When row group rendering is disabled, attributes set here do not render.
+ * </p>
+ * <p>
+ * Because this tag renders inside of an HTML table, it by default renders an HTML
+ * &lt;tr&gt; tag to represent a table row.  Table row tag rendering can be disabled using the {@link #setRenderRow(boolean)}
+ * attribute.  When this is disabled, the page author is responsible for maintaining the integrity of the
+ * HTML table by writing &lt;tr&gt; tags manually or by using the {@link Row} tag.  When this tag is rendering
+ * it does not produce table cells; the contents of the table row in the footer is entirely left to the
+ * page author.  With row rendering disabled, it is also possible to add multiple table rows to the
+ * end of a data grid.
+ * </p>
+ * <p>
+ * The set of JSP implicit objects available to the body include:
+ * <ul>
+ * <li><code>dataGridModel</code> -- the {@link org.apache.beehive.netui.databinding.datagrid.api.rendering.DataGridTagModel}
+ * for the cell's containing data grid.</li>
+ * </ul>
+ * </p>
+ *
  * @netui:tag name="rows" body-content="scriptless"
  *            description="Renders the data rows into a NetUI data grid"
  */
@@ -98,7 +132,6 @@
      *
      * @param onClick the onClick event.
      * @jsptagref.attributedescription The onClick JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onClick</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onClick JavaScript event for the HTML tbody tag."
      */
@@ -111,7 +144,6 @@
      *
      * @param onDblClick the onDblClick event.
      * @jsptagref.attributedescription The onDblClick JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onDblClick</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onDblClick JavaScript event for the HTML tbody tag."
      */
@@ -124,7 +156,6 @@
      *
      * @param onKeyDown the onKeyDown event.
      * @jsptagref.attributedescription The onKeyDown JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onKeyDown</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onKeyDown JavaScript event for the HTML tbody tag."
      */
@@ -137,7 +168,6 @@
      *
      * @param onKeyUp the onKeyUp event.
      * @jsptagref.attributedescription The onKeyUp JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onKeyUp</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onKeyUp JavaScript event for the HTML tbody tag."
      */
@@ -150,7 +180,6 @@
      *
      * @param onKeyPress the onKeyPress event.
      * @jsptagref.attributedescription The onKeyPress JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onKeyPress</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onKeyPress JavaScript event for the HTML tbody tag."
      */
@@ -163,7 +192,6 @@
      *
      * @param onMouseDown the onMouseDown event.
      * @jsptagref.attributedescription The onMouseDown JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseDown</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseDown JavaScript event for the HTML tbody tag."
      */
@@ -176,7 +204,6 @@
      *
      * @param onMouseUp the onMouseUp event.
      * @jsptagref.attributedescription The onMouseUp JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseUp</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseUp JavaScript event for the HTML tbody tag."
      */
@@ -189,7 +216,6 @@
      *
      * @param onMouseMove the onMouseMove event.
      * @jsptagref.attributedescription The onMouseMove JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseMove</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseMove JavaScript event for the HTML tbody tag."
      */
@@ -202,7 +228,6 @@
      *
      * @param onMouseOut the onMouseOut event.
      * @jsptagref.attributedescription The onMouseOut JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseOut</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseOut JavaScript event for the HTML tbody tag."
      */
@@ -215,7 +240,6 @@
      *
      * @param onMouseOver the onMouseOver event.
      * @jsptagref.attributedescription The onMouseOver JavaScript event for the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseOver</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseOver JavaScript event for the HTML tbody tag."
      */
@@ -228,7 +252,6 @@
      *
      * @param style the style
      * @jsptagref.attributedescription The style of the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_style</i>
      * @netui:attribute required="false"  rtexprvalue="true" description="The style of the HTML tbody tag."
      */
@@ -243,7 +266,6 @@
      *
      * @param styleClass the style class
      * @jsptagref.attributedescription The style class of the HTML tbody tag.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_style_class</i>
      * @netui:attribute required="false"  rtexprvalue="true" description="The style class of the HTML tbody tag."
      */
@@ -258,7 +280,6 @@
      *
      * @param title the title
      * @jsptagref.attributedescription The title for the HTML tbody tag
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_title</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The title for the HTML tbody tag"
      */
@@ -271,7 +292,6 @@
 
      * @param align the horizontal alignment
      * @jsptagref.attributedescription The horizontal alignment of the HTML tbody tag.
-     * @jsptagref.databindable true
      * @jsptagref.attributesyntaxvalue <i>string_align</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The cell's horizontal alignment of the HTML tbody tag."
      */
@@ -285,7 +305,6 @@
      *
      * @param alignChar the horizontal alignment character
      * @jsptagref.attributedescription The horizontal alignment character of the HTML tbody tag.
-     * @jsptagref.databindable true
      * @jsptagref.attributesyntaxvalue <i>string_alignChar</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The cell's horizontal alignment character of the HTML tbody tag."
      */
@@ -298,7 +317,6 @@
      *
      * @param alignCharOff
      * @jsptagref.attributedescription The horizontal alignment character offset
-     * @jsptagref.databindable true
      * @jsptagref.attributesyntaxvalue <i>string_alignCharOff</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The cell's horizontal alignment character offset"
      */
@@ -311,7 +329,6 @@
      *
      * @param align the alignment
      * @jsptagref.attributedescription The vertical alignment.
-     * @jsptagref.databindable true
      * @jsptagref.attributesyntaxvalue <i>string_align</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The vertical alignment of the HTML tbody tag"
      */

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/SpanCell.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/SpanCell.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/SpanCell.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/SpanCell.java Thu May 19 12:28:44 2005
@@ -93,7 +93,6 @@
      *
      * @param onClick the onClick event for the HTML span.
      * @jsptagref.attributedescription The onClick JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onClick</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onClick JavaScript event."
      */
@@ -106,7 +105,6 @@
      *
      * @param onDblClick the onDblClick event for the HTML span.
      * @jsptagref.attributedescription The onDblClick JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onDblClick</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onDblClick JavaScript event for the HTML span."
      */
@@ -119,7 +117,6 @@
      *
      * @param onKeyDown the onKeyDown event for the HTML span.
      * @jsptagref.attributedescription The onKeyDown JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onKeyDown</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onKeyDown JavaScript event for the HTML span."
      */
@@ -132,7 +129,6 @@
      *
      * @param onKeyUp the onKeyUp event.
      * @jsptagref.attributedescription The onKeyUp JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onKeyUp</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onKeyUp JavaScript event for the HTML span."
      */
@@ -145,7 +141,6 @@
      *
      * @param onKeyPress the onKeyPress event.
      * @jsptagref.attributedescription The onKeyPress JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onKeyPress</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onKeyPress JavaScript event for the HTML span."
      */
@@ -158,7 +153,6 @@
      *
      * @param onMouseDown the onMouseDown event.
      * @jsptagref.attributedescription The onMouseDown JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseDown</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseDown JavaScript event for the HTML span."
      */
@@ -171,7 +165,6 @@
      *
      * @param onMouseUp the onMouseUp event.
      * @jsptagref.attributedescription The onMouseUp JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseUp</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseUp JavaScript event for the HTML span."
      */
@@ -184,7 +177,6 @@
      *
      * @param onMouseMove the onMouseMove event.
      * @jsptagref.attributedescription The onMouseMove JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseMove</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseMove JavaScript event for the HTML span."
      */
@@ -197,7 +189,6 @@
      *
      * @param onMouseOut the onMouseOut event.
      * @jsptagref.attributedescription The onMouseOut JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseOut</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseOut JavaScript event for the HTML span."
      */
@@ -210,7 +201,6 @@
      *
      * @param onMouseOver the onMouseOver event.
      * @jsptagref.attributedescription The onMouseOver JavaScript event for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_onMouseOver</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The onMouseOver JavaScript event for the HTML span."
      */
@@ -223,7 +213,6 @@
      *
      * @param style the html style.
      * @jsptagref.attributedescription The style for the HTML span
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_style</i>
      * @netui:attribute required="false"  rtexprvalue="true" description="The style for the HTML span"
      */
@@ -238,7 +227,6 @@
      *
      * @param styleClass the html style class.
      * @jsptagref.attributedescription The style class for the HTML span
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_style_class</i>
      * @netui:attribute required="false"  rtexprvalue="true" description="The style class for the HTML span."
      */
@@ -253,7 +241,6 @@
      *
      * @param title
      * @jsptagref.attributedescription The title for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_title</i>
      * @netui:attribute required="false" rtexprvalue="true" description="The title for the HTML span."
      */
@@ -265,7 +252,6 @@
      * Sets the lang attribute for the HTML span.
      * @param lang
      * @jsptagref.attributedescription The lang for the HTML span.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_lang</i>
      * @netui:attribute required="false" rtexprvalue="true"
      * description="The lang for the HTML span"
@@ -279,7 +265,6 @@
      * Sets the dir attribute for the HTML span.
      * @param dir
      * @jsptagref.attributedescription The dir.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_dir</i>
      * @netui:attribute required="false" rtexprvalue="true"
      * description="The dir for the HTML span."
@@ -300,7 +285,6 @@
      *
      * @param tagId the the name of the tagId for the HTML span.
      * @jsptagref.attributedescription The tagId.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_tagId</i>
      * @netui:attribute required="false" rtexprvalue="true"
      * description="String value. Sets the id (or name) attribute of the rendered HTML span."
@@ -317,7 +301,6 @@
      * </p>
      *
      * @jsptagref.attributedescription The value of the visible text rendered inside of the HTML span.
-     * @jsptagref.databindable false
      * @netui:attribute required="true" rtexprvalue="true"
      */
     public void setValue(String value) {

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/TemplateCell.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/TemplateCell.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/TemplateCell.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/TemplateCell.java Thu May 19 12:28:44 2005
@@ -32,9 +32,9 @@
  * to build UI that will POST data to a form, the NetUI {@link org.apache.beehive.netui.tags.html.TextBox} tag can
  * be used as:
  * <pre>
- *     <netui-data:templateCell>
- *          <netui:textBox dataSource="container.item.name"/>
- *     </netui-data:templateCell>
+ *     &lt;netui-data:templateCell>
+ *          &lt;netui:textBox dataSource="container.item.name"/>
+ *     &lt;/netui-data:templateCell>
  * </pre>
  * </p>
  * <p>
@@ -62,9 +62,9 @@
  * to build UI that will POST data to a form, the NetUI {@link org.apache.beehive.netui.tags.html.TextBox} tag can
  * be used as:
  * <pre>
- *     <netui-data:templateCell>
- *          <netui:textBox dataSource="container.item.name"/>
- *     </netui-data:templateCell>
+ *     &lt;netui-data:templateCell>
+ *          &lt;netui:textBox dataSource="container.item.name"/>
+ *     &lt;/netui-data:templateCell>
  * </pre>
  * </p>
  * <p>

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/AbstractCallMethod.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/AbstractCallMethod.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/AbstractCallMethod.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/AbstractCallMethod.java Thu May 19 12:28:44 2005
@@ -19,42 +19,29 @@
 
 import org.apache.beehive.netui.util.internal.InternalStringBuilder;
 
-// java imports
-
 import java.lang.reflect.InvocationTargetException;
 import java.lang.reflect.Method;
-
 import java.util.ArrayList;
 import java.util.List;
-
 import javax.servlet.jsp.JspException;
 
-// internal imports
 import org.apache.beehive.netui.tags.AbstractClassicTag;
-
 import org.apache.beehive.netui.util.Bundle;
 import org.apache.beehive.netui.util.logging.Logger;
 import org.apache.beehive.netui.util.type.TypeUtils;
 
-// external imports
-
 /**
+ * <p>
+ * An abstract base class for tags that are capable of reflectively invoking methods.  Specializations of this
+ * tag provide method implementations that locate the object on which to invoke the method and that handle
+ * any return value from the invoked method.
  * <p/>
- * An abstract base class for tags that are capable of reflectively
- * invoking methods.  Specializations of this tag provide method
- * implementations that locate the object on which to invoke the
- * method and that handle any return value from the invoked
- * method.
- * <p/>
- * <p/>
- * The <code>CallMethod</code> tag can have child tags of type
- * {@link MethodParameter}; these tags must be in the same
- * order as the parameter list in the method signature of the
- * method that will be invoked.  To invoke an overloaded method, the
- * {@link MethodParameter#setType(String)} property must be set to the String
- * name of the type to pass to the method.  If the type attribute values
- * on nested {@link MethodParameter} tags do not match any method signature,
- * an error will be reported in the page.
+ * <p>
+ * The <code>CallMethod</code> tag can have child tags of type {@link MethodParameter}; these tags must be in the same
+ * order as the parameter list in the method signature of the method that will be invoked.  To invoke an overloaded
+ * method, the {@link MethodParameter#setType(String)} property must be set to the String name of the type to pass
+ * to the method.  If the type attribute values on nested {@link MethodParameter} tags do not match any method
+ * signature, an error will be reported in the page.
  * </p>
  */
 public abstract class AbstractCallMethod
@@ -73,11 +60,16 @@
     private boolean _verifyTypes = false;
 
     /**
-     * Sets the identifier at which the result of invoking the method will
-     * stored.
+     * Sets the identifier at which the result of invoking the method will stored.  Once stored, the
+     * result of the reflective invocation will be available via the JSP EL implicit object
+     * <code>${pageScope}</code> with the attribute name set via this property.
      *
      * @param resultId a String that names an attribute in the PageContext's
      *                 attribute map where any resulting object will be stored.
+     * @jsptagref.attributedescription
+     * Sets the identifier at which the result of invoking the method will stored.  Once stored, the
+     * result of the reflective invocation will be available via the JSP EL implicit object
+     * <code>${pageScope}</code> with the attribute name set via this property.
      * @netui:attribute required="false"
      */
     public void setResultId(String resultId) {
@@ -85,11 +77,11 @@
     }
 
     /**
-     * Sets whether or not to report exceptions to the page when errors
-     * occur invoking a method on an object.
+     * Sets whether or not to report exceptions to the page when errors occur invoking a method on an object.
      *
-     * @param failOnError a boolean that defines whether or not exceptions
-     *                    should be thrown when invocation fails.
+     * @param failOnError a boolean that defines whether or not exceptions should be thrown when invocation fails.
+     * @jsptagref.attributedescription
+     * Sets whether or not to report exceptions to the page when errors occur invoking a method on an object.
      * @netui:attribute required="false"
      */
     public void setFailOnError(boolean failOnError) {
@@ -100,6 +92,8 @@
      * Sets the name of a method to invoke on the target object.
      *
      * @param method the name of the method to invoke
+     * @jsptagref.attributedescription
+     * Sets the name of a method to invoke on the target object.
      * @netui:attribute required="true"
      */
     public void setMethod(String method) {
@@ -107,11 +101,9 @@
     }
 
     /**
-     * Add a paramter that will be passed as an argument to the method that
-     * will be invoked.  This method is implemented to allow the
-     * the {@link MethodParameter} tags to register
-     * their parameters.  This object is passed in the position that it
-     * appeared in the set of child {@link MethodParameter} tags.
+     * Add a paramter that will be passed as an argument to the method that will be invoked.  This method
+     * is implemented to allow the the {@link MethodParameter} tags to register their parameters.  This
+     * object is passed in the position that it appeared in the set of child {@link MethodParameter} tags.
      *
      * @param type      a String of the type or class name of this parameter
      * @param parameter an object that should be passed as an argument to the invoked method
@@ -132,12 +124,11 @@
     }
 
     /**
-     * Causes the body of this tag to be rendered; only {@link MethodParameter}
-     * tags are allowed to be contained inside of this tag.  The body content is
-     * never rendered.
+     * Causes the body of this tag to be rendered; only {@link MethodParameter} tags are allowed to be
+     * contained inside of this tag.  The output of rendering the body is never written into the
+     * output stream of the servlet.
      *
-     * @return EVAL_BODY_BUFFERED
-     * @see MethodParameter
+     * @return {@link #EVAL_BODY_BUFFERED}
      */
     public int doStartTag()
             throws JspException {
@@ -148,18 +139,17 @@
      * Reflectively invokes the method specified by the <code>method</code> attribute,
      * {@link #findMethod(Object, String, boolean)}.  The arguments passed to the method are taken from any nested
      * {@link MethodParameter} tags.  When the parameters which are added by the
-     * {@link MethodParameter} tags are {@link java.lang.String} types, an attempt is made
-     * to convert each of these parameters into the type expected by the method.  This
-     * conversion is done using the {@link TypeUtils#convertToObject(java.lang.String, java.lang.Class)}
-     * method.  If a String can not be converted do the type expected by the method,
-     * an exception is thrown and the error is reported in the tag.  Any return value
-     * that results from invoking the given method is passed to the subclass implementation
-     * of the method {@link #handleReturnValue(java.lang.Object)}.
+     * {@link MethodParameter} tags are {@link java.lang.String} types, an attempt is made to convert each of
+     * these parameters into the type expected by the method.  This conversion is done using the
+     * {@link TypeUtils#convertToObject(java.lang.String, java.lang.Class)} method.  If a String can not
+     * be converted do the type expected by the method, an exception is thrown and the error is reported
+     * in the tag.  Any return value that results from invoking the given method is passed to the
+     * subclass implementation of the method {@link #handleReturnValue(java.lang.Object)}.
      *
-     * @return EVAL_PAGE to continue evaluating the page
+     * @return {@link #EVAL_PAGE} to continue evaluating the page
      * @throws JspException if there are errors.  All exceptions that may be thrown
      *                      in the process of reflectively invoking the method and performing type
-     *                      conversion are reported as @see javax.servlet.jsp.JspException.
+     *                      conversion are reported as {@link JspException}
      * @see #findMethod(Object, String, boolean)
      * @see #handleReturnValue(java.lang.Object)
      * @see MethodParameter
@@ -289,21 +279,22 @@
 
     /**
      * <p/>
-     * Resolve the object on which the method should be invoked.  If there are
-     * errors resolving this object, this method will throw an <code>ObjectNotFoundException</code>.
-     * <br/>
-     * <br/>
-     * If the object is not found but no exception occurred, this method should return null.
+     * Resolve the object on which the method should be invoked.  If there are errors resolving this object,
+     * this method will throw an {@link ObjectNotFoundException}.
+     * </p>
+     * <p>
+     * If the object is not found but no exception occurred, this method returns <code>null</code>.
      * </p>
      *
-     * @return the object on which to reflectively invoke the method.
+     * @return the object on which to reflectively invoke the method or <code>null</code> if the
+     *         object was not found and no exception occurred.
      * @throws ObjectNotFoundException if an exception occurred attempting to resolve an object
      */
     protected abstract Object resolveObject() throws ObjectNotFoundException, JspException;
 
     /**
-     * Get the name of the object that is the target of the invocation.  This is
-     * a generic method for this tag that enables more specific error reporting.
+     * Get the name of the object that is the target of the invocation.  This is a generic method for this
+     * tag that enables more specific error reporting.
      *
      * @return a name for the object on which the method will be invoked.
      */

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallMethod.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallMethod.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallMethod.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallMethod.java Thu May 19 12:28:44 2005
@@ -98,7 +98,6 @@
      *
      * @param object the object on which to invoke a method
      * @jsptagref.attributedescription A string or data binding expression that names the class on which to call a method.
-     * @jsptagref.databindable Read Only
      * @jsptagref.attributesyntaxvalue <i>string_or_expression_object</i>
      * @netui:attribute required="false" rtexprvalue="true"
      */

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallPageFlow.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallPageFlow.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallPageFlow.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/CallPageFlow.java Thu May 19 12:28:44 2005
@@ -17,74 +17,81 @@
  */
 package org.apache.beehive.netui.tags.databinding.invoke;
 
-// java imports
-
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
-// internal imports
 import org.apache.beehive.netui.pageflow.PageFlowUtils;
 import org.apache.beehive.netui.pageflow.internal.InternalUtils;
-
 import org.apache.beehive.netui.util.Bundle;
-
 import org.apache.beehive.netui.util.logging.Logger;
 
-// external imports
-
 /**
- * A tag that is used to call a method on the current {@link org.apache.beehive.netui.pageflow.PageFlowController}.
- * The PageFlow on which to call the method is found given the location of the JSP page in the
- * webapp; if no PageFlow is found in the current directory, an {@link ObjectNotFoundException} is
- * thrown and the tag execution fails.
- * <p>This tag extends the {@link CallMethod} tag, which defines additional attributes.</p>
- * <p>Once the method has been called, any return value is set in the
- * {@link javax.servlet.jsp.PageContext} attribute map under the <code>resultId</code>
- * attribute that is provided on the {@link CallMethod} tag.  In the case that the return
- * value is a primitive type, the primitive type's object wrapper is set in the
- * <code>PageContext</code> under the <code>resultId</code> key.</p>
+ * <p>
+ * Calls methods on the current Page Flow.  If no Controller file is found, an
+ * {@link ObjectNotFoundException} is thrown and the tag execution fails.
+ * Any return value is stored in the <code>${pageScope...}</code> data binding context object under the
+ * attribute specified by the <code>resultId</code> attribute.
+ * </p>
+ * <p>
+ * For example, given a <code>hello</code> method and the following &lt;netui-data:callPageFlow> tag:
+ * <pre>
+ * &lt;netui-data:callPageFlow method="hello" resultId="helloMessage"/>
+ * </pre>
+ * <p>
+ * the result of the call is stored in the <code>${pageScope}</code> JSP EL implicit object under
+ * the attribute <code>helloMessage</code>.  It will be accessible via <code>${pageScope.helloMessage}</code> and
+ * can be used as:
+ * <pre>
+ *     &lt;netui:span value="<b>${pageScope.helloMessage}</b>"/>
+ * </pre>
+ * </p>
+ * <p>
+ * In JSP scriptlet, the result can be retrieved by calling the <code>getAttribute()</code> method on the
+ * {@link javax.servlet.jsp.PageContext javax.servlet.jsp.PageContext} object:
+ * <pre>
+ *     &lt;%= pageContext.getAttribute("helloMessage") %>
+ * </pre>
+ * </p>
  *
- * @jsptagref.tagdescription Calls methods on the Controller file (= JPF file) in the same directory
- * as the JSP page.  If no Controller file
- * is found, an {@link ObjectNotFoundException} is
- * thrown and the tag execution fails.
- * Any return value is stored in the
- * <code>{pageContext...}</code> data binding context object under the
- * attribute specified by the <code>resultId</code>
- * attribute.
- * <p/>
- * <p>For example, if you call the <code>hello</code> method with the following &lt;netui-data:callPageFlow> tag...
- * <p/>
- * <pre>    &lt;netui-data:callPageFlow
- *          method="hello"
- *          <b>resultId="helloMessage"</b>
- *          /></pre>
- * <p/>
- * <p>...the result of the call is stored in the <code>{pageContext...}</code> data binding context under the
- * attribute <code>helloMessage</code>.
- * <p/>
- * <p>The result can be retrieved with the data binding expression
- * <code>{pageContext.helloMessage}</code>
- * <p/>
- * <pre>   &lt;netui:span value="<b>${pageContext.helloMessage}</b>"/></pre>
- * <p/>
- * In a scriptlet, the result can be retrieved by calling the <code>getAttribute()</code>
- * method on the
+ * @jsptagref.tagdescription
+ * Calls methods on the current Page Flow.  If no Controller file is found, an
+ * {@link ObjectNotFoundException} is thrown and the tag execution fails.
+ * Any return value is stored in the <code>${pageScope...}</code> data binding context object under the
+ * attribute specified by the <code>resultId</code> attribute.
+ * <p/>
+ * <p>
+ * For example, given a <code>hello</code> method and the following &lt;netui-data:callPageFlow> tag:
+ * <pre>
+ * &lt;netui-data:callPageFlow method="hello" resultId="helloMessage"/>
+ * </pre>
+ * <p>
+ * the result of the call is stored in the <code>${pageScope}</code> JSP EL implicit object under
+ * the attribute <code>helloMessage</code>.  It will be accessible via <code>${pageScope.helloMessage}</code> and
+ * can be used as:
+ * <pre>
+ *     &lt;netui:span value="<b>${pageScope.helloMessage}</b>"/>
+ * </pre>
+ * </p>
+ * <p>
+ * In JSP scriptlet, the result can be retrieved by calling the <code>getAttribute()</code> method on the
  * {@link javax.servlet.jsp.PageContext javax.servlet.jsp.PageContext} object:
- * <p/>
- * <pre>    &lt;%= pageContext.getAttribute("helloMessage") %></pre>
- * <p/>
- * @example In the following sample, the &lt;netui-data:callPageFlow> tag calls the
- * sumCartItems method on the Controller file.  The
- * {@link org.apache.beehive.netui.tags.html.Label} tag
+ * <pre>
+ *     &lt;%= pageContext.getAttribute("helloMessage") %>
+ * </pre>
+ * </p>
+ * @example
+ * In the following sample, the &lt;netui-data:callPageFlow> tag calls the
+ * sumCartItems method on the Controller file.  The {@link org.apache.beehive.netui.tags.html.Span} tag
  * accesses the result through the ${pageScope} data binding context.
- * <pre>     &lt;netui-data:callPageFlow method="sumCartItems" resultId="cartSum">
+ * <pre>
+ *      &lt;netui-data:callPageFlow method="sumCartItems" resultId="cartSum">
  *          &lt;netui-data:methodParameter value="${pageFlow.cart.lineItemList}"/>
  *      &lt;/netui-data:callPageFlow>
  *      ...
- *      &lt;netui:span value="${pageContext.cartSum}"/></pre>
- * @netui:tag name="callPageFlow" description="Use this tag to call a method on the current page flow controller."
- * deprecated="true"
+ *      &lt;netui:span value="${pageScope.cartSum}"/>
+ * </pre>
+ * @netui:tag name="callPageFlow" deprecated="true"
+ *            description="Use this tag to call a method on the current page flow controller."
  */
 public class CallPageFlow
         extends CallMethod {

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/MethodParameter.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/MethodParameter.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/MethodParameter.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/MethodParameter.java Thu May 19 12:28:44 2005
@@ -17,100 +17,116 @@
  */
 package org.apache.beehive.netui.tags.databinding.invoke;
 
-// java imports
-
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.tagext.Tag;
 
-// internal imports
 import org.apache.beehive.netui.tags.AbstractClassicTag;
-
 import org.apache.beehive.netui.util.Bundle;
 
-// external imports
-
 /**
+ * <p>
  * A tag that is used to add an argument to a method that will be called
  * on some object. This tag can be nested within tags that extend the AbstractCallMethod
  * class. Those tags are:
  * <ul>
- * <li>&lt;netui-data:callControl&gt;</li>
- * <li>&lt;netui-data:callMethod&gt;</li>
- * <li>&lt;netui-data:callPageFlow&gt;</li>
- * <li>&lt;netui-data:choiceMethod&gt;</li>
+ * <li>{@link CallMethod}</li>
+ * <li>{@link CallPageFlow}</li>
  * </ul>
- * <p/>
- * The <code>methodParameter</code> tags are used to parameterize the method
- * that the {@link AbstractCallMethod} class will call; each <code>methodParameter</code>
- * tag represents a single parameter. These tags are evaluated in order and the parameters
- * they describe are passed in order.</p>
- * <p/>
- * Overloaded methods on an object can be invoked by setting the <code>type</code>
- * attribute on each <code>methodParameter</code> tag that is embedded in
- * a method invocation tag.  The type name must exactly match the primitive
- * type name or the fully qualified class name of the argument.  The
- * <code>methodParameter</code> tags must also be in the order that they
- * will be passed to this method.  The value of the type attribute must be
- * an exact match of the type if it were printed after having been
- * accessed through Java reflection.</p>
- * <p/>
- * In order to pass <code>null</code> as an argument to a method, the
- * null attribute must be set on this tag. Either the null attribute or the
- * value attribute must be set on this tag.</p>
+ * </p>
+ * <p>
+ * The {@link MethodParameter} tags are used to parameterize the method that the {@link AbstractCallMethod} class
+ * will call; each <code>methodParameter</code> tag represents a single parameter. These tags are evaluated
+ * in order and the parameters they describe are passed in order.
+ * </p>
+ * <p>
+ * Overloaded methods on an object can be invoked by setting the <code>type</code> attribute on each
+ * <code>methodParameter</code> tag that is embedded in a method invocation tag.  The type name must
+ * exactly match the primitive type name or the fully qualified class name of the argument.  The
+ * <code>methodParameter</code> tags must also be in the order that they will be passed to this method.
+ * The value of the type attribute must be an exact match of the type if it were printed after having been
+ * accessed through Java reflection.
+ * </p>
+ * <p>
+ * In order to pass <code>null</code> as an argument to a method, the null attribute must be set on this tag.
+ * Either the null attribute or the value attribute must be set on this tag.
+ * </p>
+ * <p>
+ * This example shows how to pass parameters to the method call <code>foo(int integer, String string)</code>.
+ * <pre>
+ *    &lt;netui-data:methodParamter value="42"/&gt;
+ *    &lt;netui-data:methodParamter null="true"/&gt;
+ * </pre>
+ * This will correspond to the method call:<br/>
+ * <pre>
+ *     foo(42, null);
+ * </pre>
+ * The following sample shows how to pass parameters to the method call <code>foo(int integer, String string)</code>
+ * where the class has both of the methods <code>foo(int integer, String string)</code> and
+ * <code>foo(Integer integer, String string)</code>.
+ * <pre>
+ *     &lt;netui-data:methodParamter type="int" value="42"/&gt;
+ *     &lt;netui-data:methodParamter type="java.lang.String" null="true"/&gt;
+ * </pre>
+ * This will correspond to the method call:<br/>
+ * <pre>
+ *     foo(42, null);
+ * </pre>
+ * </p>
  *
- * @jsptagref.tagdescription Provides an argument to a method-calling tag.
- * The &lt;netui-data:methodParameter> tag can be nested within the following
- * method-calling tags:
- * <blockquote>
+ * @jsptagref.tagdescription
+ * <p>
+ * A tag that is used to add an argument to a method that will be called
+ * on some object. This tag can be nested within tags that extend the AbstractCallMethod
+ * class. Those tags are:
  * <ul>
- * <li>{@link org.apache.beehive.netui.tags.databinding.invoke.CallControl}</li>
- * <li>{@link org.apache.beehive.netui.tags.databinding.invoke.CallMethod}</li>
- * <li>{@link org.apache.beehive.netui.tags.databinding.invoke.CallPageFlow}</li>
+ * <li>{@link CallMethod}</li>
+ * <li>{@link CallPageFlow}</li>
  * </ul>
- * </blockquote>
- * <p/>
- * <p/>
- * Each &lt;netui-data:methodParameter>
- * tag represents a single parameter. A group of &lt;netui-data:methodParameter>
- * tags are evaluated in order and the parameters
- * they describe are passed in order.</p>
- * <p/>
- * <p/>
- * Overloaded methods on an object can be invoked by setting the <code>type</code>
- * attribute on each &lt;netui-data:methodParameter> tag that is embedded in
- * a method-calling tag.  The type name must exactly match the primitive
- * type name or the fully qualified class name of the argument.  The
- * &lt;netui-data:methodParameter> tags must also be in the order that they
- * will be passed to the method.  The value of the <code>type</code> attribute must be
- * an exact match of the type as if it were printed after having been
- * accessed through Java reflection.</p>
- * <p/>
- * <p/>
- * In order to pass <code>NULL</code> as an argument to a method, the
- * <code>null</code> attribute must be set on this tag. Either the <code>null</code>
- * attribute or the
- * <code>value</code> attribute must be set on this tag.</p>
- * @example The following sample shows how to pass parameters to the method call
- * <code>foo(int integer, String string)</code>.
- * <p/>
- * <pre>    &lt;netui-data:methodParamter value="42"/&gt;
- *    &lt;netui-data:methodParamter null="true"/&gt;</pre>
- * <p/>
+ * </p>
+ * <p>
+ * The {@link MethodParameter} tags are used to parameterize the method that the {@link AbstractCallMethod} class
+ * will call; each <code>methodParameter</code> tag represents a single parameter. These tags are evaluated
+ * in order and the parameters they describe are passed in order.
+ * </p>
+ * <p>
+ * Overloaded methods on an object can be invoked by setting the <code>type</code> attribute on each
+ * <code>methodParameter</code> tag that is embedded in a method invocation tag.  The type name must
+ * exactly match the primitive type name or the fully qualified class name of the argument.  The
+ * <code>methodParameter</code> tags must also be in the order that they will be passed to this method.
+ * The value of the type attribute must be an exact match of the type if it were printed after having been
+ * accessed through Java reflection.
+ * </p>
+ * <p>
+ * In order to pass <code>null</code> as an argument to a method, the null attribute must be set on this tag.
+ * Either the null attribute or the value attribute must be set on this tag.
+ * </p>
+ *
+ * @example
+ * <p>
+ * This example shows how to pass parameters to the method call <code>foo(int integer, String string)</code>.
+ * <pre>
+ *    &lt;netui-data:methodParamter value="42"/&gt;
+ *    &lt;netui-data:methodParamter null="true"/&gt;
+ * </pre>
  * This will correspond to the method call:<br/>
- * <p/>
- * <pre>    foo(42, null);</pre>
- * <p/>
- * The following sample shows how to pass parameters to the method call
- * <code>foo(int integer, String string)</code>
- * where the class has both of the methods <code>foo(int integer, String string)</code>
- * and <code>foo(Integer integer, String string)</code>.
- * <p/>
- * <pre>    &lt;netui-data:methodParamter type="int" value="42"/&gt;
- *    &lt;netui-data:methodParamter type="java.lang.String" null="true"/&gt;</pre>
- * <p/>
- * This will correspond to the method call:</p>
- * <pre>    foo(42, null);</pre>
- * @netui:tag name="methodParameter" description="Use this tag to add an argument to a method that will be called on some object."
+ * <pre>
+ *     foo(42, null);
+ * </pre>
+ * The following sample shows how to pass parameters to the method call <code>foo(int integer, String string)</code>
+ * where the class has both of the methods <code>foo(int integer, String string)</code> and
+ * <code>foo(Integer integer, String string)</code>.
+ * <pre>
+ *     &lt;netui-data:methodParamter type="int" value="42"/&gt;
+ *     &lt;netui-data:methodParamter type="java.lang.String" null="true"/&gt;
+ * </pre>
+ * This will correspond to the method call:<br/>
+ * <pre>
+ *     foo(42, null);
+ * </pre>
+ * </p>
+ *
+ * @netui:tag name="methodParameter"
+ *            description="Use this tag to add an argument to a method that will be called on some object."
  */
 public class MethodParameter
         extends AbstractClassicTag {
@@ -178,7 +194,6 @@
      * <tr><td>addToPrice(int price)</td><td>price</td><td><code>int</code></td></tr>
      * <tr><td>addToPrice(Integer price)</td><td>price</td><td><code>java.lang.Integer</code></td></tr>
      * </table>
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_type</i>
      * @netui:attribute required="false"
      */
@@ -196,9 +211,7 @@
      * tag.
      *
      * @param value a String value which may be an expression
-     * @jsptagref.attributedescription The value of the method parameter that will be passed
-     * to the method call.
-     * @jsptagref.databindable true
+     * @jsptagref.attributedescription The value of the method parameter that will be passed to the method call.
      * @jsptagref.attributesyntaxvalue <i>expression_value</i>
      * @netui:attribute required="false" rtexprvalue="true"
      */
@@ -214,7 +227,6 @@
      *               <code>true</code> null will be passed; otherwise the value from the value attribute
      *               will be passed.
      * @jsptagref.attributedescription Boolean. Determines if the parameter passed to the method is null.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>boolean_passNullValue</i>
      * @netui:attribute required="false"
      */
@@ -227,7 +239,7 @@
      * a {@link AbstractCallMethod} tag and that one of the "null" and "value"
      * attributes are set.
      *
-     * @return SKIP_BODY
+     * @return {@link #SKIP_BODY}
      * @throws JspException if an error occurs getting the parameter
      */
     public int doStartTag()
@@ -254,7 +266,7 @@
      * Prepare the value to pass up to the {@link AbstractCallMethod} type
      * parent.
      *
-     * @return EVAL_PAGE to continue evaluating the page
+     * @return {@link #EVAL_PAGE} to continue evaluating the page
      */
     public int doEndTag()
             throws JspException {

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/ObjectNotFoundException.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/ObjectNotFoundException.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/ObjectNotFoundException.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/invoke/ObjectNotFoundException.java Thu May 19 12:28:44 2005
@@ -17,12 +17,6 @@
  */
 package org.apache.beehive.netui.tags.databinding.invoke;
 
-// java imports
-
-// internal imports
-
-// external imports
-
 /**
  * An exception thrown when an object on which to invoke a method can not
  * be found.  The {@link CallMethod#resolveObject()} call throws this exception.

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/Message.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/Message.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/Message.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/Message.java Thu May 19 12:28:44 2005
@@ -25,28 +25,63 @@
 import java.util.List;
 
 /**
- * Tag handler class for the &lt;netui-data:message> tag. Provides a message schema, which can be parameterized with message content.
- *
- * @jsptagref.tagdescription This tag provides a message schema, which can be parameterized to
- * construct customizable messages.
+ * <p>
+ * This tag provides a message schema, which can be parameterized to construct customizable messages.
+ * Curly-braces are used to identify argument place holders in the schema:
+ * <p/>
+ * For example, the following will format a message and place the result in a {@link javax.servlet.jsp.PageContext}
+ * attribute named <code>message</code>.
+ * <pre>
+ * &lt;%
+ *    pageContext.setAttribute("msgSkeleton", new String("Hello {0}. {1} {2}, the current date and time are {3}."));
+ * %>
+ * &lt;netui-data:message value="${pageScope.msgSkeleton}" resultId="message">
+ * </pre>
+ * </p>
+ * <p>
+ * The followingn example defines a message schema, while the {@link MessageArg} tags provide the parameters that
+ * plug values into the schema.  In the following example, the &lt;netui-data:message> tag uses the <code>value</code>
+ * attribute to bind to the message schema (which was earlier added to the
+ * {@link javax.servlet.jsp.PageContext javax.servlet.jsp.PageContext} object. The two &lt;netui-data:messageArg>
+ * tags provide the parameters to plug into the schema.
+ * <pre>
+ *    &lt;%
+ *        pageContext.setAttribute("msgSkeleton", new String("To read about {0}, go to {1}."));
+ *    %&gt;
+ *    ...
+ *    &lt;netui-data:message value="${pageScope.msgSkeleton}" resultId="message"&gt;
+ *        &lt;netui-data:messageArg value="messaging"/&gt;
+ *        &lt;netui-data:messageArg value="my web page"/&gt;
+ *    &lt;/netui-data:message&gt;
+ *    ...
+ *    &lt;netui:span value="${pageScope.message}"/&gt;</pre>
  * <p/>
- * <p>Curly-braces are used to identify argument place holders in the schema:
+ * <p>The following message is output to the JSP page:<p>
+ * <p/>
+ * <pre>
+ *     To read about messaging, go to my web page.
+ * </pre>
+ * </p>
+ *
+ * @jsptagref.tagdescription
+ * <p>
+ * This tag provides a message schema, which can be parameterized to construct customizable messages.
+ * Curly-braces are used to identify argument place holders in the schema:
  * <p/>
  * <pre>
  * &lt;%
  *    pageContext.setAttribute("msgSkeleton", new String("Hello {0}. {1} {2}, the current date and time are {3}."));
  *    %>
  *    &lt;netui-data:message value="${pageScope.msgSkeleton}" resultId="message"></pre>
- * @example Defines a message schema, while the
- * {@link org.apache.beehive.netui.tags.databinding.message.MessageArg} tags
- * provide the parameters that plug values into the schema.
- * In the following example, the &lt;netui-data:message> tag
- * uses the <code>value</code> attribute to bind to the message schema (which
- * was earlier added to the
- * {@link javax.servlet.jsp.PageContext javax.servlet.jsp.PageContext} object.
- * The two &lt;netui-data:messageArg> tags provide the parameters to plug into the
- * schema.
- * <pre>    &lt;%
+ * @example
+ * <p>
+ * The followingn example defines a message schema, while the {@link MessageArg} tags provide the parameters that
+ * plug values into the schema.  In the following example, the &lt;netui-data:message> tag uses the <code>value</code>
+ * attribute to bind to the message schema (which was earlier added to the
+ * {@link javax.servlet.jsp.PageContext javax.servlet.jsp.PageContext} object. The two &lt;netui-data:messageArg>
+ * tags provide the parameters to plug into the schema.
+ * <pre>
+ *    &lt;%
  *        pageContext.setAttribute("msgSkeleton", new String("To read about {0}, go to {1}."));
  *    %&gt;
  *    ...
@@ -59,12 +94,18 @@
  * <p/>
  * <p>The following message is output to the JSP page:<p>
  * <p/>
- * <pre>    To read about messaging, go to my web page.</pre>
+ * <pre>
+ *     To read about messaging, go to my web page.
+ * </pre>
+ * </p>
+ *
+ * @deprecated This tag has been deprecated in favor of the i18n tags available in JSTL.
  * @netui:tag name="message"
- * description="Allows you to format messages according to any sequence you want, using one or more values from arguments defined in MessageArg tag(s). The results are available to the page context."
+ *            deprecated="true"
+ *            description="Allows you to format messages according to any sequence you want, using one or more values from arguments defined in MessageArg tag(s). The results are available to the page context."
  */
 public class Message
-        extends AbstractClassicTag {
+    extends AbstractClassicTag {
 
     public static final String MESSAGE_ARG_KEY = "netui_bundleMessageArguments";
 
@@ -77,8 +118,14 @@
     }
 
     /**
-     * @jsptagref.attributedescription The id of the resulting string.
-     * @jsptagref.databindable false
+     * Set the attribute name under which the output formatted message will be available.  The message
+     * will be stored in the JSP EL implicit object <code>pageScope</code>.  If the value of this attribute
+     * is <code>foo</code>, the resulting message will be available with <code>${pageScope.foo}</code>.
+     *
+     * @jsptagref.attributedescription
+     * Set the attribute name under which the output formatted message will be available.  The message
+     * will be stored in the JSP EL implicit object <code>pageScope</code>.  If the value of this attribute
+     * is <code>foo</code>, the resulting message will be available with <code>${pageScope.foo}</code>.
      * @jsptagref.attributesyntaxvalue <i>string_result</i>
      * @netui:attribute required="true"
      */
@@ -87,8 +134,25 @@
     }
 
     /**
-     * @jsptagref.attributedescription A <code>pageScope</code> or <code>requestScope</code> databinding expression.
-     * @jsptagref.databindable true
+     * <p>
+     * Set the object to use when formatting a message.  This value should be either a String or be convertable
+     * to a String via its {@link Object#toString()} method.  In ordet for format the message, this value
+     * should appear as:
+     * <pre>
+     *     Hello, {0}!
+     * </pre>
+     * where the <code>{0}</code> can be filled in during formatting via the {@link MessageArg} tag.
+     * </p>
+     * @jsptagref.attributedescription
+     * <p>
+     * Set the object to use when formatting a message.  This value should be either a String or be convertable
+     * to a String via its {@link Object#toString()} method.  In ordet for format the message, this value
+     * should appear as:
+     * <pre>
+     *     Hello, {0}!
+     * </pre>
+     * where the <code>{0}</code> can be filled in during formatting via the {@link MessageArg} tag.
+     * </p>
      * @jsptagref.attributesyntaxvalue <i>expression_value</i>
      * @netui:attribute required="true" rtexprvalue="true"
      */

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/MessageArg.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/MessageArg.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/MessageArg.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/message/MessageArg.java Thu May 19 12:28:44 2005
@@ -17,26 +17,30 @@
  */
 package org.apache.beehive.netui.tags.databinding.message;
 
-// java imports
-
 import javax.servlet.jsp.JspException;
 import javax.servlet.jsp.PageContext;
 
-// internal imports
 import org.apache.beehive.netui.tags.AbstractClassicTag;
 
-// external imports
-
 /**
- * Tag handler class for the &lt;netui-data:messageArg> tag.  Provides message for the {@link Message} tag.
+ * <p>
+ * This tag should be used in conjunction with the {@link Message} tag to provide a message argument to the
+ * message format provided in the {@link Message#setValue(Object)} method.  Before formatting, the
+ * value of this tag will be substituted into the message.
+ * </p>
  *
- * @jsptagref.tagdescription Provides a parameter value to a message schema.
- * <p/>
- * <p>The message schema is defined by a {@link Message} tag.
- * @example <p>For an example that uses the &lt;netui-data:messageArg&gt;
- * tag, see the {@link Message} description.
+ * @jsptagref.tagdescription
+ * <p>
+ * This tag should be used in conjunction with the {@link Message} tag to provide a message argument to the
+ * message format provided in the {@link Message#setValue(Object)} method.  Before formatting, the
+ * value of this tag will be substituted into the message.
+ * </p>
+ * @example
+ * <p>For an example that uses the &lt;netui-data:messageArg&gt; tag, see the {@link Message} description.
+ * @deprecated This tag has been deprecated in favor of the i18n tags available in JSTL.
  * @netui:tag name="messageArg"
- * description="Allows you to set values that are used as arguments to the Message tag. The formatted message results are available to the page context."
+ *            deprecated="true"
+ *            description="Allows you to set values that are used as arguments to the Message tag. The formatted message results are available to the page context."
  */
 public class MessageArg
         extends AbstractClassicTag {
@@ -49,7 +53,6 @@
 
     /**
      * @jsptagref.attributedescription A string value for the argument.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_argument</i>
      * @netui:attribute required="true" rtexprvalue="true"
      */

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/pageinput/DeclarePageInput.java Thu May 19 12:28:44 2005
@@ -28,105 +28,78 @@
 import org.apache.beehive.netui.tags.AbstractSimpleTag;
 
 /**
- * <p/>
- * The DeclarePageInput tag is used to declare variables that are passed to the page from
- * the page flow.  A page input variable has a lifetime of the page in which it
- * is declared and can be referenced using the <code>pageInput</code> implicit object.
- * The <code>name</code> attribute here is used as the identifier for the variable inside
- * of this binding context, and the <code>type</code> attribute is used to identify
- * the expected type of this variable.
+ * <p>
+ * The DeclarePageInput tag is used to declare variables that are passed as outputs of Page Flow actions to a
+ * JSP.  This allows pages to declare a data contract that invoking actions must satisfy in order to
+ * successfully render a page; in essence, this is a simple method signature for the JSP.
+ * </p>
+ * <p>
+ * Page inputs are added to a Page Flow's {@link org.apache.beehive.netui.pageflow.Forward} class via the
+ * {@link org.apache.beehive.netui.pageflow.Forward#addActionOutput(String, Object)} method.  From the page's
+ * perspective, the action outputs are known as <i>page inputs</i> and are available via the JSP EL
+ * implicit object <code>pageInput</code> using the name given them on the
+ * {@link org.apache.beehive.netui.pageflow.Forward} and set on this tag via {@link #setName(String)}.
+ * </p>
+ * <p>
+ * A page input can be declared to be required; if required, the page input must be available in
+ * the map of action outputs passed to the page.
+ * </p>
+ * <p>
+ * For example, to add an actiout output called <code>profile</code> to a {@link org.apache.beehive.netui.pageflow.Forward}
+ * an action would contain code like:<br/>
+ * <pre>
+ *     forward.addActionOutput("profile", yourProfile);
+ * </pre>
+ * In order to declare this as a page input in a JSP, the page would contain a tag as:
+ * <pre>
+ *     &lt;netui-data:declarePageInput name="profile" type="org.someprofile.ProfileBean"/>
+ * </pre>
+ * and the <code>profile</code> object could be referenced in the JSP as:
+ * <pre>
+ *     ${pageInput.profile}
+ * </pre>
  * </p>
  *
+ * @jsptagref.tagdescription
+ * <p>
+ * The DeclarePageInput tag is used to declare variables that are passed as outputs of Page Flow actions to a
+ * JSP.  This allows pages to declare a data contract that invoking actions must satisfy in order to
+ * successfully render a page; in essence, this is a simple method signature for the JSP.
+ * </p>
+ * <p>
+ * Page inputs are added to a Page Flow's {@link org.apache.beehive.netui.pageflow.Forward} class via the
+ * {@link org.apache.beehive.netui.pageflow.Forward#addActionOutput(String, Object)} method.  From the page's
+ * perspective, the action outputs are known as <i>page inputs</i> and are available via the JSP EL
+ * implicit object <code>pageInput</code> using the name given them on the
+ * {@link org.apache.beehive.netui.pageflow.Forward} and set on this tag via {@link #setName(String)}.
+ * </p>
+ * <p>
+ * A page input can be declared to be required; if required, the page input must be available in
+ * the map of action outputs passed to the page.
+ * </p>
+ * <p>
+ * For example, to add an actiout output called <code>profile</code> to a {@link org.apache.beehive.netui.pageflow.Forward}
+ * an action would contain code like:<br/>
  * <pre>
- * 
- * @jsptagref.tagdescription <p>
- * Declares variables that are passed from
- * the Controller file to the JSP page.
- * <p/>
- * <p/>
- * The variable's lifetime is the same as that of the JSP page on which it
- * is declared.
- * <p/>
- * <p/>
- * On the Controller file, use the <code>addPageInput</code> method
- * (a method on the {@link org.apache.beehive.netui.pageflow.Forward Forward} class)
- * to make the variable available to the &lt;netui-data:declarePageInput> tag.
- * <p/>
- * <pre>
- *    Forward f = new Forward("success");
- *    f.addPageInput("myData", new MyData());
- * </pre>
- * <p/>
- * Then, on the JSP page, declare the variable with the &lt;netui-data:declarePageInput> tag.
- * <p/>
- * <pre>    &lt;netui-data:declarePageInput name="<b>myData</b>" type="myPageFlow.MyPageFlowController.MyData"/></pre>
- * <p/>
- * <p/>
- * Once declared, the variable can be referenced using the
- * <code>pageInput</code> data binding context.
- * The <code>name</code> attribute is used as the identifier for the variable inside
- * of this binding context, and the <code>type</code> attribute is used to identify
- * the expected type of this variable.
- * </p>
- * <p/>
- * <pre>    &lt;netui:span value="<b>${pageInput.myData}</b>"/></pre>
- * <p/>
- * <p>Using the &lt;netui-data:declarePageInput> has the following advantages
- * <p/>
- * <blockquote>
- * <ul>
- * <li>The presence of &lt;netui-data:declarePageInput> tags in a JSP file
- * helps to indicate clearly the type of data expected at run time. This
- * information about the incoming data helps your team understand any
- * data dependencies a given JSP page may have on the Controller file.</li>
- * </ul>
- * </blockquote>
- * @example This sample shows how a variable, <code>foo</code>, is defined in the Controller file,
- * and its value is
- * passed to a JSP page by using the <code>addPageInput</code> method and the
- * &lt;netui-data:declarePageInput> tag.
- * <h4>Code in the Controller file...</h4>
- * <p/>
- *    <pre>
- *    &#x40;Jpf.Action(
- *        forwards={
- *            &#x40;Jpf.Forward(name="simple", path="simple.jsp")
- *        }
- *    )
- *    public Forward simple()
- *    {
- *        Forward f = new Forward("simple");
- *        f.addPageInput("fooBean", new FooBean());
- *        return f;
- *    }
- * <p/>
- *    public static class FooBean
- *    {
- *        private String foo = "A Foo String";
- * <p/>
- *        public String getFoo()
- *        {
- *            return foo;
- *        }
- * <p/>
- *        public void setFoo(String foo)
- *        {
- *            this.foo = foo;
- *        }
- *    }</pre>
- * <h4>Code in a JSP page...</h4>
- * <pre>    &lt;netui-data:declarePageInput name="fooBean" type="pageInput.PageInputController.FooBean"/>
- *    ...
- *    fooBean.foo: &lt;netui:span value="${pageInput.fooBean.foo}" />
+ *     forward.addActionOutput("profile", yourProfile);
  * </pre>
+ * In order to declare this as a page input in a JSP, the page would contain a tag as:
+ * <pre>
+ *     &lt;netui-data:declarePageInput name="profile" type="org.someprofile.ProfileBean"/>
+ * </pre>
+ * and the <code>profile</code> object could be referenced in the JSP as:
+ * <pre>
+ *     ${pageInput.profile}
+ * </pre>
+ * </p>
  *
  * @netui:tag name="declarePageInput" body-content="scriptless"
- * description="Use this tag to declare a page input variable that is available in the pageInput databinding context."
+ *            description="Use this tag to declare a page input variable that is available in the pageInput databinding context."
  */
 public class DeclarePageInput
-        extends AbstractSimpleTag {
+    extends AbstractSimpleTag {
 
-    private static final Logger logger = Logger.getInstance(DeclarePageInput.class);
+    private static final Logger LOGGER = Logger.getInstance(DeclarePageInput.class);
     private static final String EMPTY_STRING = "";
 
     private String _type = null;
@@ -149,7 +122,6 @@
      *
      * @param name the name of the variable
      * @jsptagref.attributedescription The name of the variable to reference.
-     * @jsptagref.databindable false
      * @jsptagref.attributesyntaxvalue <i>string_name</i>
      * @netui:attribute required="true"
      */
@@ -158,11 +130,14 @@
     }
 
     /**
-     * Set the required attribute.  If a Page Input is required, the tag will report an
-     * error if the page input key does not appear in the set of page inputs
-     * for a page.
+     * Set a flag that declares whether this page intput is required or optiona.  If a Page Input is required,
+     * the tag will report an error if the page input key does not appear in the set of page inputs for a page.
      *
      * @param required whether to require the page input for the page
+     * @jsptagref.attributedescription
+     * Set a flag that declares whether this page intput is required or optiona.  If a Page Input is required,
+     * the tag will report an error if the page input key does not appear in the set of page inputs for a page.
+     * @jsptagref.attributesyntaxvalue <i>string_name</i>
      * @netui:attribute required="false"
      */
     public void setRequired(boolean required) {
@@ -170,12 +145,11 @@
     }
 
     /**
-     * Set the type of the variable that referenced with the
-     * {@link #setName} attribute on this tag.
+     * Set the String classname variable that represents the expected type of the page input.
      *
      * @param type the type of the variable that is referenced
-     * @jsptagref.attributedescription The expected data type of the variable.
-     * @jsptagref.databindable false
+     * @jsptagref.attributedescription
+     * Set the String classname variable that represents the expected type of the page input.
      * @jsptagref.attributesyntaxvalue <i>string_type</i>
      * @netui:attribute required="true"
      */
@@ -187,9 +161,9 @@
      *
      */
     public void doTag()
-            throws JspException {
-        if(logger.isDebugEnabled())
-            logger.debug("Added a page input named \"" + _name + "\" of type \"" + _type + "\"");
+        throws JspException {
+
+        LOGGER.debug("Added a page input named \"" + _name + "\" of type \"" + _type + "\"");
 
         if(_name.equals(EMPTY_STRING)) {
             String msg = Bundle.getErrorString("Tags_DeclarePageInput_EmptyName");

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/Repeater.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/Repeater.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/Repeater.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/Repeater.java Thu May 19 12:28:44 2005
@@ -221,8 +221,8 @@
      * items encountered while iterating over a data set.
      *
      * @param ignoreNulls whether or not to ignore nulls
-     * @jsptagref.attributedescription Boolean. If set to true, any null iteration items in the data set will be ignored.
-     * @jsptagref.databindable false
+     * @jsptagref.attributedescription
+     * Boolean. If set to true, any null iteration items in the data set will be ignored.
      * @jsptagref.attributesyntaxvalue <i>boolean_ignoreNulls</i>
      * @netui:attribute required="false"
      */
@@ -247,8 +247,8 @@
      * references a null object and the defaultText attribute is non-null.
      *
      * @param defaultText the default text
-     * @jsptagref.attributedescription The text to render if the <code>dataSource</code> attribute references a null data set.
-     * @jsptagref.databindable false
+     * @jsptagref.attributedescription
+     * The text to render if the <code>dataSource</code> attribute references a null data set.
      * @jsptagref.attributesyntaxvalue <i>string_defaultText</i>
      * @netui:attribute required="false" rtexprvalue="true"
      */
@@ -342,6 +342,9 @@
     }
 
     /**
+     * Method used by tags in the repeater tag set to register the presence of a contained
+     * tag.  When registered, the repeater will change the way in which it renders to
+     * either use structured or non-structured rendering.
      * @param repeaterComponent {@link RepeaterComponent} to register with the Repeater parent
      */
     public void registerChildTag(RepeaterComponent repeaterComponent) {
@@ -349,7 +352,8 @@
     }
 
     /**
-     * @return SKIP_BODY if an error occurs; EVAL_BODY_BUFFERED otherwise
+     * Start rendering the repeater.
+     * @return {@link #SKIP_BODY} if an error occurs; {@link #EVAL_BODY_BUFFERED} otherwise
      * @throws JspException if an error occurs that can not be reported in the page
      */
     public int doStartTag()
@@ -416,7 +420,11 @@
     }
 
     /**
-     * @return SKIP_BODY if an error occurs or the data set has been rendered; EVAL_BODY_AGAIN otherwise
+     * <p>
+     * Continue rendering the repeater changing the render state or advancing to a new data item
+     * as needed.
+     * </p>
+     * @return {@link SKIP_BODY} if an error occurs or the data set has been rendered; {@link EVAL_BODY_AGAIN} otherwise
      */
     public int doAfterBody() {
 
@@ -462,7 +470,8 @@
     }
 
     /**
-     * @return EVAL_PAGE
+     * Complete rendering the repeater.
+     * @return {@link EVAL_PAGE}
      * @throws JspException if an error occurs that can not be reported in the page
      */
     public int doEndTag()
@@ -714,7 +723,6 @@
      * tag draws its data from myIterativeData.
      *
      * <p>&nbsp;&nbsp;&nbsp;&nbsp;<code>&lt;netui-data:repeater dataSource="pageFlow.myIterativeData"></code>
-     * @jsptagref.databindable Read / Write
      * @jsptagref.attributesyntaxvalue <i>expression_datasource</i>
      * @netui:attribute required="true"
      */

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterComponent.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterComponent.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterComponent.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterComponent.java Thu May 19 12:28:44 2005
@@ -28,41 +28,39 @@
 import org.apache.beehive.netui.util.logging.Logger;
 
 /**
- * The base class for tags that are part of the {@link Repeater} tag set
- * and participate in the structured nature of {@link Repeater} rendering.
- * This class provides typed access to the {@link Repeater} tag and
- * enforces the basic JSP tag parenting requirements of tags that can
- * only be nested within the {@link Repeater} tag.
+ * <p>
+ * The base class for tags that are part of the {@link Repeater} tag set and participate in the structured nature
+ * of {@link Repeater} rendering.  This class provides typed access to the {@link Repeater} tag and
+ * enforces the basic JSP tag parenting requirements of tags that can only be nested within the
+ * {@link Repeater} tag.
+ * </p>
  */
 public abstract class RepeaterComponent
-        extends AbstractClassicTag {
+    extends AbstractClassicTag {
 
     private static final Logger LOGGER = Logger.getInstance(RepeaterComponent.class);
 
     private Repeater _repeater = null;
 
     /**
+     * <p>
      * Starts a tag's lifecycle.  This method performs several operations before
      * invoking the @see renderStartTag(int) method.  In order, these stages are:
      * <ol>
-     * <li>@see verifyStructure()</li>
-     * <li>@see prepare()</li>
      * <li>@see verifyAttributes()</li>
      * <li>@see renderStartTag(int)</li>
      * </ol>
-     * The benefit of this lifecycle is that it provides a structure for component
-     * tags that are immediately nested inside of repeating tags.
-     * <br/>
      * <br/>
      * Any errors that occur before calling @see renderStartTag(int) are reported
      * in the page.
-     *
+     * </p>
      * @return the value returned from calling @see renderStartTag(int), which can be
      *         any value that can be returned from the @see javax.servlet.jsp.tagext.TagSupport
      *         class.  If an error occurs, the tag returns SKIP_BODY.
      */
     public int doStartTag()
-            throws JspException {
+        throws JspException {
+        
         int ret = SKIP_BODY;
         try {
             Tag parent = getParent();

Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterFooter.java
URL: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterFooter.java?rev=170981&r1=170980&r2=170981&view=diff
==============================================================================
--- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterFooter.java (original)
+++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/repeater/RepeaterFooter.java Thu May 19 12:28:44 2005
@@ -18,33 +18,78 @@
 package org.apache.beehive.netui.tags.databinding.repeater;
 
 /**
- * This tag is used to render the footer of a {@link Repeater}.  This
- * header may contain any markup or tags that can be rendered to a page.  In
- * the case of closing a table, ordered list, or unordered list, the elements
- * &lt;table&gt;, &lt;ol&gt;, and &lt;ul&gt; could respectively be rendered inside
- * the body of this tag.  Ther is no data item present at the time that the
- * RepeaterFooter renders, so tags in the body can not reference the
- * <code>container</code> databinding context to access a current item
- * or index, though other databinding contexts are available.
- * <p>The RepeaterFooter renders exactly once in a table during the {@link Repeater}
- * tag's {@link Repeater#FOOTER} rendering state.</p>
+ * <p>
+ * Renders the footer of a {@link Repeater} tag.  This header may contain any HTML markup that can
+ * be rendered to a page.  In the case of closing a table, ordered list, or unordered list, the elements
+ * &lt;/table&gt;, &lt;/ol&gt;, and &lt;/ul&gt; could respectively be rendered inside the body of
+ * the &lt;netui-data:repeaterFooter> tag.
+ * </p>
+ * <p>
+ * There is no data item present at the time that the &lt;netui-data:repeaterFooter> renders
+ * (because the iteration of the &lt;netui-data:repeater> tag has ended), so tags in the body can not
+ * reference the <code>${container...}</code> JSP EL implicit object to access the current item in
+ * the data set, though other databinding contexts are available.
+ * </p>
+ * <p>
+ * The header tag is rendered exactly once at the end of repeater rendering.
+ * </p>
+ * <p>
+ * For example, the following sample renders the data set as an HTML table.  The table has two columns,
+ * "index" and "name", and each iteration over the data set is rendered a row of the table.  The
+ * &lt;netui-data:repeaterFooter> tag renders once, after the iteration is complete.  It renders a
+ * closing HTML table tag.
+ * <br/>
+ * <pre>
+ *    &lt;netui-data:repeater dataSource="pageFlow.myDataSet">
+ *        &lt;netui-data:repeaterHeader>
+ *            &lt;table border="1">
+ *                &lt;tr>
+ *                    &lt;td>&lt;b>index&lt;/b>&lt;/td>
+ *                    &lt;td>&lt;b>name&lt;/b>&lt;/td>
+ *                &lt;/tr>
+ *        &lt;/netui-data:repeaterHeader>
+ *        &lt;netui-data:repeaterItem>
+ *            &lt;tr>
+ *                &lt;td>
+ *                    &lt;netui:span value="${container.index}" />
+ *                &lt;/td>
+ *                &lt;td>
+ *                    &lt;netui:span value="${container.item}" />
+ *                &lt;/td>
+ *            &lt;/tr>
+ *        &lt;/netui-data:repeaterItem>
+ *        <b>&lt;netui-data:repeaterFooter></b>
+ *            &lt;/table>
+ *        <b>&lt;/netui-data:repeaterFooter></b>
+ *    &lt;/netui-data:repeater>
+ * </pre>
+ * </p>
  *
- * @jsptagref.tagdescription Renders the footer of a {@link Repeater} tag.  This
- * header may contain any HTML markup that can be rendered to a page.  In
- * the case of closing a table, ordered list, or unordered list, the elements
- * &lt;/table&gt;, &lt;/ol&gt;, and &lt;/ul&gt; could respectively be rendered inside
- * the body of the &lt;netui-data:repeaterFooter> tag.
- * <p/>
- * <p>There is no data item present at the time that the
- * &lt;netui-data:repeaterFooter> renders (because the iteration of
- * the &lt;netui-data:repeater> tag has ended), so tags in the body can not reference the
- * <code>{container...}</code> data binding context to access the current item in
+ * @jsptagref.tagdescription
+ * <p>
+ * Renders the footer of a {@link Repeater} tag.  This header may contain any HTML markup that can
+ * be rendered to a page.  In the case of closing a table, ordered list, or unordered list, the elements
+ * &lt;/table&gt;, &lt;/ol&gt;, and &lt;/ul&gt; could respectively be rendered inside the body of
+ * the &lt;netui-data:repeaterFooter> tag.
+ * </p>
+ * <p>
+ * There is no data item present at the time that the &lt;netui-data:repeaterFooter> renders
+ * (because the iteration of the &lt;netui-data:repeater> tag has ended), so tags in the body can not
+ * reference the <code>${container...}</code> JSP EL implicit object to access the current item in
  * the data set, though other databinding contexts are available.
- * @example The following sample renders the data set as an HTML table.  The table has two columns, "index" and "name",
- * and each iteration over the data set is rendered a row of the table.  The &lt;netui-data:repeaterFooter>
- * tag renders once, after the iteration is complete.  It renders a closing HTML table tag.
- * <p/>
- * <pre>    &lt;netui-data:repeater dataSource="pageFlow.myDataSet">
+ * </p>
+ * <p>
+ * The header tag is rendered exactly once at the end of repeater rendering.
+ * </p>
+ * @example
+ * <p>
+ * For example, the following sample renders the data set as an HTML table.  The table has two columns,
+ * "index" and "name", and each iteration over the data set is rendered a row of the table.  The
+ * &lt;netui-data:repeaterFooter> tag renders once, after the iteration is complete.  It renders a
+ * closing HTML table tag.
+ * <br/>
+ * <pre>
+ *    &lt;netui-data:repeater dataSource="pageFlow.myDataSet">
  *        &lt;netui-data:repeaterHeader>
  *            &lt;table border="1">
  *                &lt;tr>
@@ -65,8 +110,11 @@
  *        <b>&lt;netui-data:repeaterFooter></b>
  *            &lt;/table>
  *        <b>&lt;/netui-data:repeaterFooter></b>
- *    &lt;/netui-data:repeater></pre>
- * @netui:tag name="repeaterFooter" description="Use this tag to render the footer of a Repeater."
+ *    &lt;/netui-data:repeater>
+ * </pre>
+ * </p>
+ *
+ * @netui:tag name="repeaterFooter" description="Render the footer of a repeater tag."
  */
 public class RepeaterFooter
         extends RepeaterComponent {