org.apache.struts2.views.jsp.iterator
Class SubsetIteratorTag

java.lang.Object
  extended by javax.servlet.jsp.tagext.TagSupport
      extended by javax.servlet.jsp.tagext.BodyTagSupport
          extended by org.apache.struts2.views.jsp.StrutsBodyTagSupport
              extended by org.apache.struts2.views.jsp.iterator.SubsetIteratorTag
All Implemented Interfaces:
java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag

public class SubsetIteratorTag
extends StrutsBodyTagSupport

NOTE: JSP-TAG

A tag that takes an iterator and outputs a subset of it. It delegates to SubsetIteratorFilter internally to perform the subset functionality.

 
 public class MySubsetTagAction extends ActionSupport {
      public String execute() throws Exception {
         l = new ArrayList();
         l.add(new Integer(1));
         l.add(new Integer(2));
         l.add(new Integer(3));
         l.add(new Integer(4));
         l.add(new Integer(5));
         return "done";
      }


      public Integer[] getMyArray() {
         return a;
      }

      public List getMyList() {
         return l;
       }

      public Decider getMyDecider() {
      return new Decider() {
          public boolean decide(Object element) throws Exception {
              int i = ((Integer)element).intValue();
              return (((i % 2) == 0)?true:false);
          }
      };
      }
  }
 
 
 
 <!-- s: List basic -->
    <s:subset source="myList">
       <s:iterator>
          <s:property />
       </s:iterator>
    </s:subset>
 
 
 
 <!-- B: List with count -->
    <s:subset source="myList" count="3">
       <s:iterator>
           <s:property />
       </s:iterator>
     </s:subset>
 
 
 
 <!--  C: List with start -->
      <s:subset source="myList" count="13" start="3">
         <s:iterator>
           <s:property />
         </s:iterator>
      </s:subset>
 
 
 
 <!--  D: List with var -->
      <s:subset var="mySubset" source="myList" count="13" start="3" />
      <%
          Iterator i = (Iterator) pageContext.getAttribute("mySubset");
          while(i.hasNext()) {
      %>
      <%=i.next() %>
      <%  } %>
 
 
 
  <!--  D: List with Decider -->
      <s:subset source="myList" decider="myDecider">
             <s:iterator>
                  <s:property />
             </s:iterator>
      </s:subset>
 
 

See Also:
Serialized Form

Field Summary
 
Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport
bodyContent
 
Fields inherited from class javax.servlet.jsp.tagext.TagSupport
id, pageContext
 
Fields inherited from interface javax.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
Fields inherited from interface javax.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
 
Fields inherited from interface javax.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
Constructor Summary
SubsetIteratorTag()
           
 
Method Summary
 int doEndTag()
           
 int doStartTag()
           
 void setCount(java.lang.String count)
           
 void setDecider(java.lang.String decider)
           
 void setId(java.lang.String string)
           
 void setSource(java.lang.String source)
           
 void setStart(java.lang.String start)
           
 void setVar(java.lang.String var)
           
 
Methods inherited from class org.apache.struts2.views.jsp.StrutsBodyTagSupport
findString, findValue, findValue, getBody, getStack, toString
 
Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport
doAfterBody, doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
 
Methods inherited from class javax.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setPageContext, setParent, setValue
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface javax.servlet.jsp.tagext.Tag
getParent, setPageContext, setParent
 

Constructor Detail

SubsetIteratorTag

public SubsetIteratorTag()
Method Detail

setCount

public void setCount(java.lang.String count)

setSource

public void setSource(java.lang.String source)

setStart

public void setStart(java.lang.String start)

setDecider

public void setDecider(java.lang.String decider)

setId

public void setId(java.lang.String string)
Overrides:
setId in class javax.servlet.jsp.tagext.TagSupport

setVar

public void setVar(java.lang.String var)

doStartTag

public int doStartTag()
               throws javax.servlet.jsp.JspException
Specified by:
doStartTag in interface javax.servlet.jsp.tagext.Tag
Overrides:
doStartTag in class javax.servlet.jsp.tagext.BodyTagSupport
Throws:
javax.servlet.jsp.JspException

doEndTag

public int doEndTag()
             throws javax.servlet.jsp.JspException
Specified by:
doEndTag in interface javax.servlet.jsp.tagext.Tag
Overrides:
doEndTag in class javax.servlet.jsp.tagext.BodyTagSupport
Throws:
javax.servlet.jsp.JspException


Copyright © 2000-2011 Apache Software Foundation. All Rights Reserved.