## org.apache.commons.jelly.tags.core
Class ForEachTag

    java.lang.Object
      org.apache.commons.jelly.TagSupport
          org.apache.commons.jelly.tags.core.ForEachTag

All Implemented Interfaces:
  Tag

    public class ForEachTag

extends TagSupport

Iterates over a collection, iterator or an array of objects. Uses the same syntax as the JSTL `forEach` tag does.

Version:
  $Revision: 155420 $
Author:
  James Strachan

Nested Class Summary
`static class` `ForEachTag.LoopStatus` Holds the status of the loop.

Field Summary

Fields inherited from class org.apache.commons.jelly.TagSupport
`body, context, hasTrimmed, parent, shouldTrim`

Constructor Summary
`ForEachTag()`

Method Summary
`void` `doTag(XMLOutput output)` Evaluates this tag after all the tags properties have been initialized.
`void` `setBegin(int begin)` Sets the starting index value
`void` `setEnd(int end)` Sets the ending index value
`void` `setIndexVar(java.lang.String indexVar)` Sets the variable name to export the current index counter to
`void` `setItems(Expression items)` Sets the expression used to iterate over.
`void` `setStep(int step)` Sets the index increment step
`void` `setVar(java.lang.String var)` Sets the variable name to export for the item being iterated over
`void` `setVarStatus(java.lang.String var)` Sets the variable name to export the current status to.

Methods inherited from class org.apache.commons.jelly.TagSupport
`findAncestorWithClass, findAncestorWithClass, findAncestorWithClass, findAncestorWithClass, findAncestorWithClass, findAncestorWithClass, getBody, getBodyText, getBodyText, getContext, getParent, invokeBody, isEscapeText, isTrim, setBody, setContext, setEscapeText, setParent, setTrim, trimBody`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ForEachTag

    public ForEachTag()

Method Detail

### doTag

    public void doTag(XMLOutput output)
               throws MissingAttributeException,
                      JellyTagException

  Description copied from interface: `Tag`
  Evaluates this tag after all the tags properties have been initialized.

  Throws:
    `MissingAttributeException`
    `JellyTagException`

### setItems

    public void setItems(Expression items)

  Sets the expression used to iterate over. This expression could resolve to an Iterator, Collection, Map, Array, Enumeration or comma separated String.

### setVar

    public void setVar(java.lang.String var)

  Sets the variable name to export for the item being iterated over

### setIndexVar

    public void setIndexVar(java.lang.String indexVar)

  Sets the variable name to export the current index counter to

### setBegin

    public void setBegin(int begin)

  Sets the starting index value

### setEnd

    public void setEnd(int end)

  Sets the ending index value

### setStep

    public void setStep(int step)

  Sets the index increment step

### setVarStatus

    public void setVarStatus(java.lang.String var)

  Sets the variable name to export the current status to. The status is an implementation of the JSTL LoopTagStatus interface that provides the following bean properties:
  - current - the current value of the loop items being iterated
  - index - the current index of the items being iterated
  - first - true if this is the first iteration, false otherwise
  - last - true if this is the last iteration, false otherwise
  - begin - the starting index of the loop
  - step - the stepping value of the loop
  - end - the end index of the loop

Copyright © 2002-2005 Apache Software Foundation. All Rights Reserved.