NOTE: JSP-TAG A tag that takes an iterator and outputs a subset of it. It delegates to {@link org.apache.struts2.util.SubsetIteratorFilter} internally toperform the subset functionality.
- count (Object) - Indicate the number of entries to be in the resulting subset iterator
- source* (Object) - Indicate the source of which the resulting subset iterator is to be derived base on
- 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
- decider (Object) - Extension to plug-in a decider to determine if that particular entry is to be included in the resulting subset iterator
- var (String) - Indicate the pageContext attribute name to store the resultant subset iterator in
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>
@s.tag name="subset" tld-body-content="JSP"description="Takes an iterator and outputs a subset of it"