Author: musachy Date: Tue Jul 10 12:40:06 2007 New Revision: 555056 URL: http://svn.apache.org/viewvc?view=rev&rev=555056 Log: WW-2027 Tags that push values into the value stack should use the "var" attribute to specify the name of the variable * Fix iterator tags
Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java struts/struts2/trunk/core/src/site/resources/tags/generator.html struts/struts2/trunk/core/src/site/resources/tags/set.html struts/struts2/trunk/core/src/site/resources/tags/sort.html struts/struts2/trunk/core/src/site/resources/tags/subset.html Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/StrutsBodyTagSupport.java Tue Jul 10 12:40:06 2007 @@ -39,11 +39,6 @@ private static final long serialVersionUID = -1201668454354226175L; - @StrutsTagAttribute(required=false,description="The id of the tag element") - public void setId(String string) { - super.setId(string); - } - protected boolean altSyntax() { return ContextUtil.isUseAltSyntax(getStack().getContext()); } Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/IteratorGeneratorTag.java Tue Jul 10 12:40:06 2007 @@ -46,7 +46,7 @@ * <li>val* (Object) - the source to be parsed into an iterator </li> * <li>count (Object) - the max number (Integer, Float, Double, Long, String) entries to be in the iterator</li> * <li>separator (String) - the separator to be used in separating the <i>val</i> into entries of the iterator</li> - * <li>id (String) - the id to store the resultant iterator into page context, if such id is supplied</li> + * <li>var (String) - the name to store the resultant iterator into page context, if such name is supplied</li> * <li>converter (Object) - the converter (must extends off IteratorGenerator.Converter interface) to convert the String entry parsed from <i>val</i> into an object</li> * </ul> * <!-- END SNIPPET: params --> @@ -78,8 +78,8 @@ * * Example Three: * <pre> - * Generate an iterator with id attribute - * <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="4" separator="," id="myAtt" /> + * Generate an iterator with var attribute + * <s:generator val="%{'aaa,bbb,ccc,ddd,eee'}" count="4" separator="," var="myAtt" /> * <% * Iterator i = (Iterator) pageContext.getAttribute("myAtt"); * while(i.hasNext()) { @@ -89,7 +89,7 @@ * %> * </pre> * This generates an iterator and put it in the PageContext under the key as specified - * by the id attribute. + * by the var attribute. * * * Example Four: @@ -138,7 +138,7 @@ String separatorAttr; String valueAttr; String converterAttr; - + String var; IteratorGenerator iteratorGenerator = null; @StrutsTagAttribute(type="Integer",description="The max number entries to be in the iterator") @@ -170,13 +170,14 @@ converterAttr = aConverter; } - /** - * @s.tagattribute required="false" type="String" - * description="the id to store the resultant iterator into page context, if such id is supplied" - */ - @StrutsTagAttribute(description="The id to store the resultant iterator into page context, if such id is supplied") + @StrutsTagAttribute(description="Deprecated. Use 'var' instead") public void setId(String string) { - super.setId(string); + setVar(string); + } + + @StrutsTagAttribute(description="The name to store the resultant iterator into page context, if such name is supplied") + public void setVar(String var) { + this.var = var; } public int doStartTag() throws JspException { @@ -236,10 +237,10 @@ // push resulting iterator into stack getStack().push(iteratorGenerator); - if (getId() != null && getId().length() > 0) { + if (var != null && var.length() > 0) { // if an id is specified, we have the resulting iterator set into // the pageContext attribute as well - pageContext.setAttribute(getId(), iteratorGenerator); + pageContext.setAttribute(var, iteratorGenerator); } return EVAL_BODY_INCLUDE; Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SortIteratorTag.java Tue Jul 10 12:40:06 2007 @@ -37,8 +37,8 @@ * <b>NOTE: JSP-TAG</b> * * <p>A Tag that sorts a List using a Comparator both passed in as the tag attribute. - * If 'id' attribute is specified, the sorted list will be placed into the PageContext - * attribute using the key specified by 'id'. The sorted list will ALWAYS be + * If 'var' attribute is specified, the sorted list will be placed into the PageContext + * attribute using the key specified by 'var'. The sorted list will ALWAYS be * pushed into the stack and poped at the end of this tag.</p> * * <!-- END SNIPPET: javadoc --> @@ -94,6 +94,7 @@ String comparatorAttr; String sourceAttr; + String var; SortIteratorFilter sortIteratorFilter = null; @@ -106,6 +107,16 @@ public void setSource(String source) { sourceAttr = source; } + + @StrutsTagAttribute(description="Deprecated. Use 'var' instead") + public void setId(String string) { + setVar(string); + } + + @StrutsTagAttribute(description="The name to store the resultant iterator into page context, if such name is supplied") + public void setVar(String var) { + this.var = var; + } public int doStartTag() throws JspException { // Source @@ -134,8 +145,8 @@ // push sorted iterator into stack, so nexted tag have access to it getStack().push(sortIteratorFilter); - if (getId() != null && getId().length() > 0) { - pageContext.setAttribute(getId(), sortIteratorFilter); + if (var != null && var.length() > 0) { + pageContext.setAttribute(var, sortIteratorFilter); } return EVAL_BODY_INCLUDE; Modified: struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java (original) +++ struts/struts2/trunk/core/src/main/java/org/apache/struts2/views/jsp/iterator/SubsetIteratorTag.java Tue Jul 10 12:40:06 2007 @@ -46,7 +46,7 @@ * <li>source* (Object) - Indicate the source of which the resulting subset iterator is to be derived base on</li> * <li>start (Object) - Indicate the starting index (eg. first entry is 0) of entries in the source to be available as the first entry in the resulting subset iterator</li> * <li>decider (Object) - Extension to plug-in a decider to determine if that particular entry is to be included in the resulting subset iterator</li> - * <li>id (String) - Indicate the pageContext attribute id to store the resultant subset iterator in</li> + * <li>var (String) - Indicate the pageContext attribute name to store the resultant subset iterator in</li> * </ul> * <!-- END SNIPPET: params --> * @@ -121,8 +121,8 @@ * * <pre> * <!-- START SNIPPET: example4 --> - * <!-- D: List with id --> - * <s:subset id="mySubset" source="myList" count="13" start="3" /> + * <!-- D: List with var --> + * <s:subset var="mySubset" source="myList" count="13" start="3" /> * <% * Iterator i = (Iterator) pageContext.getAttribute("mySubset"); * while(i.hasNext()) { @@ -159,7 +159,7 @@ String sourceAttr; String startAttr; String deciderAttr; - + String var; SubsetIteratorFilter subsetIteratorFilter = null; @@ -189,6 +189,15 @@ deciderAttr = decider; } + @StrutsTagAttribute(description="Deprecated. Use 'var' instead") + public void setId(String string) { + setVar(string); + } + + @StrutsTagAttribute(description="The name to store the resultant iterator into page context, if such name is supplied") + public void setVar(String var) { + this.var = var; + } public int doStartTag() throws JspException { @@ -271,8 +280,8 @@ subsetIteratorFilter.execute(); getStack().push(subsetIteratorFilter); - if (getId() != null) { - pageContext.setAttribute(getId(), subsetIteratorFilter); + if (var != null && var.length() > 0) { + pageContext.setAttribute(var, subsetIteratorFilter); } return EVAL_BODY_INCLUDE; Modified: struts/struts2/trunk/core/src/site/resources/tags/generator.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/generator.html?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/site/resources/tags/generator.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/generator.html Tue Jul 10 12:40:06 2007 @@ -49,7 +49,7 @@ <td align="left" valign="top"></td> <td align="left" valign="top">true</td> <td align="left" valign="top">String</td> - <td align="left" valign="top">The id to store the resultant iterator into page context, if such id is supplied</td> + <td align="left" valign="top">Deprecated. Use 'var' instead</td> </tr> <tr> <td align="left" valign="top">separator</td> @@ -66,6 +66,14 @@ <td align="left" valign="top">true</td> <td align="left" valign="top">String</td> <td align="left" valign="top">The source to be parsed into an iterator</td> + </tr> + <tr> + <td align="left" valign="top">var</td> + <td align="left" valign="top">false</td> + <td align="left" valign="top"></td> + <td align="left" valign="top">true</td> + <td align="left" valign="top">String</td> + <td align="left" valign="top">The name to store the resultant iterator into page context, if such name is supplied</td> </tr> </table> <!-- END SNIPPET: tagattributes --> Modified: struts/struts2/trunk/core/src/site/resources/tags/set.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/set.html?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/site/resources/tags/set.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/set.html Tue Jul 10 12:40:06 2007 @@ -61,7 +61,7 @@ </tr> <tr> <td align="left" valign="top">var</td> - <td align="left" valign="top"><strong>true</strong></td> + <td align="left" valign="top">false</td> <td align="left" valign="top"></td> <td align="left" valign="top">true</td> <td align="left" valign="top">String</td> Modified: struts/struts2/trunk/core/src/site/resources/tags/sort.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/sort.html?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/site/resources/tags/sort.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/sort.html Tue Jul 10 12:40:06 2007 @@ -41,7 +41,7 @@ <td align="left" valign="top"></td> <td align="left" valign="top">true</td> <td align="left" valign="top">String</td> - <td align="left" valign="top">The id of the tag element</td> + <td align="left" valign="top">Deprecated. Use 'var' instead</td> </tr> <tr> <td align="left" valign="top">source</td> @@ -50,6 +50,14 @@ <td align="left" valign="top">true</td> <td align="left" valign="top">String</td> <td align="left" valign="top">The iterable source to sort</td> + </tr> + <tr> + <td align="left" valign="top">var</td> + <td align="left" valign="top">false</td> + <td align="left" valign="top"></td> + <td align="left" valign="top">true</td> + <td align="left" valign="top">String</td> + <td align="left" valign="top">The name to store the resultant iterator into page context, if such name is supplied</td> </tr> </table> <!-- END SNIPPET: tagattributes --> Modified: struts/struts2/trunk/core/src/site/resources/tags/subset.html URL: http://svn.apache.org/viewvc/struts/struts2/trunk/core/src/site/resources/tags/subset.html?view=diff&rev=555056&r1=555055&r2=555056 ============================================================================== --- struts/struts2/trunk/core/src/site/resources/tags/subset.html (original) +++ struts/struts2/trunk/core/src/site/resources/tags/subset.html Tue Jul 10 12:40:06 2007 @@ -49,7 +49,7 @@ <td align="left" valign="top"></td> <td align="left" valign="top">true</td> <td align="left" valign="top">String</td> - <td align="left" valign="top">The id of the tag element</td> + <td align="left" valign="top">Deprecated. Use 'var' instead</td> </tr> <tr> <td align="left" valign="top">source</td> @@ -66,6 +66,14 @@ <td align="left" valign="top">true</td> <td align="left" valign="top">Integer</td> <td align="left" valign="top">Indicate the starting index (eg. first entry is 0) of entries in the source to be available as the first entry in the resulting subset iterator</td> + </tr> + <tr> + <td align="left" valign="top">var</td> + <td align="left" valign="top">false</td> + <td align="left" valign="top"></td> + <td align="left" valign="top">true</td> + <td align="left" valign="top">String</td> + <td align="left" valign="top">The name to store the resultant iterator into page context, if such name is supplied</td> </tr> </table> <!-- END SNIPPET: tagattributes -->