OptionsCollectionTag (Apache Struts API Documentation)
Keywords: org.apache.struts.taglib.html.OptionsCollectionTag,OptionsCollectionTag class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.struts.taglib.html
Class OptionsCollectionTag

    java.lang.Object
      |
      +--javax.servlet.jsp.tagext.TagSupport
            |
            +--org.apache.struts.taglib.html.OptionsCollectionTag

All Implemented Interfaces:
  java.io.Serializable, javax.servlet.jsp.tagext.Tag

Direct Known Subclasses:
  NestedOptionsCollectionTag

public class OptionsCollectionTag
extends javax.servlet.jsp.tagext.TagSupport

Tag for creating multiple <select> options from a collection. The collection may be part of the enclosing form, or may be independent of the form. Each element of the collection must expose a 'label' and a 'value', the property names of which are configurable by attributes of this tag.

The collection may be an array of objects, a Collection, an Enumeration, an Iterator, or a Map.

NOTE - This tag requires a Java2 (JDK 1.2 or later) platform.

Since:
  Struts 1.1
Version:
  $Revision: 1.1 $ $Date: 2003-08-26 13:57:44 +0100 (Tue, 26 Aug 2003) $
Author:
  Martin Cooper
See Also:
  Serialized Form

Field Summary
`protected boolean` | `filter` Should the label values be filtered for HTML sensitive characters?
`protected java.lang.String` | `label` The name of the bean property containing the label.
`protected static MessageResources` | `messages` The message resources for this package.
`protected java.lang.String` | `name` The name of the bean containing the values collection.
`protected java.lang.String` | `property` The name of the property to use to build the values collection.
`private java.lang.String` | `style` The style associated with this tag.
`private java.lang.String` | `styleClass` The named style class associated with this tag.
`protected java.lang.String` | `value` The name of the bean property containing the value.

Fields inherited from class javax.servlet.jsp.tagext.TagSupport
`id, pageContext`

Fields inherited from interface javax.servlet.jsp.tagext.Tag
`EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

Constructor Summary
`OptionsCollectionTag()`

Method Summary
`protected void` | `addOption(java.lang.StringBuffer sb, java.lang.String label, java.lang.String value, boolean matched)` Add an option element to the specified StringBuffer based on the specified parameters.
`int` | `doStartTag()` Process the start of this tag.
`boolean` | `getFilter()`
`protected java.util.Iterator` | `getIterator(java.lang.Object collection)` Return an iterator for the options collection.
`java.lang.String` | `getLabel()`
`java.lang.String` | `getName()`
`java.lang.String` | `getProperty()`
`java.lang.String` | `getStyle()`
`java.lang.String` | `getStyleClass()`
`java.lang.String` | `getValue()`
`void` | `release()` Release any acquired resources.
`void` | `setFilter(boolean filter)`
`void` | `setLabel(java.lang.String label)`
`void` | `setName(java.lang.String name)`
`void` | `setProperty(java.lang.String property)`
`void` | `setStyle(java.lang.String style)`
`void` | `setStyleClass(java.lang.String styleClass)`
`void` | `setValue(java.lang.String value)`

Methods inherited from class javax.servlet.jsp.tagext.TagSupport
`doEndTag, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue`

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

Field Detail

### messages

    protected static MessageResources messages

  The message resources for this package.

### filter

    protected boolean filter

  Should the label values be filtered for HTML sensitive characters?

### label

    protected java.lang.String label

  The name of the bean property containing the label.

### name

    protected java.lang.String name

  The name of the bean containing the values collection.

### property

    protected java.lang.String property

  The name of the property to use to build the values collection.

### style

    private java.lang.String style

  The style associated with this tag.

### styleClass

    private java.lang.String styleClass

  The named style class associated with this tag.

### value

    protected java.lang.String value

  The name of the bean property containing the value.

Constructor Detail

### OptionsCollectionTag

    public OptionsCollectionTag()

Method Detail

### getFilter

    public boolean getFilter()

### setFilter

    public void setFilter(boolean filter)

### getLabel

    public java.lang.String getLabel()

### setLabel

    public void setLabel(java.lang.String label)

### getName

    public java.lang.String getName()

### setName

    public void setName(java.lang.String name)

### getProperty

    public java.lang.String getProperty()

### setProperty

    public void setProperty(java.lang.String property)

### getStyle

    public java.lang.String getStyle()

### setStyle

    public void setStyle(java.lang.String style)

### getStyleClass

    public java.lang.String getStyleClass()

### setStyleClass

    public void setStyleClass(java.lang.String styleClass)

### getValue

    public java.lang.String getValue()

### setValue

    public void setValue(java.lang.String value)

### doStartTag

    public int doStartTag()
                   throws javax.servlet.jsp.JspException

  Process the start of this tag.

  Specified by:
    `doStartTag` in interface `javax.servlet.jsp.tagext.Tag`
  Overrides:
    `doStartTag` in class `javax.servlet.jsp.tagext.TagSupport`
  Throws:
    `javax.servlet.jsp.JspException` - if a JSP exception has occurred

### release

    public void release()

  Release any acquired resources.

  Specified by:
    `release` in interface `javax.servlet.jsp.tagext.Tag`
  Overrides:
    `release` in class `javax.servlet.jsp.tagext.TagSupport`

### addOption

    protected void addOption(java.lang.StringBuffer sb,
                             java.lang.String label,
                             java.lang.String value,
                             boolean matched)

  Add an option element to the specified StringBuffer based on the specified parameters.

  Note that this tag specifically does not support the `styleId` tag attribute, which causes the HTML `id` attribute to be emitted. This is because the HTML specification states that all "id" attributes in a document have to be unique. This tag will likely generate more than one `option` element element, but it cannot use the same `id` value. It's conceivable some sort of mechanism to supply an array of `id` values could be devised, but that doesn't seem to be worth the trouble.

  Parameters:
    `sb` - StringBuffer accumulating our results
    `value` - Value to be returned to the server for this option
    `label` - Value to be shown to the user for this option
    `matched` - Should this value be marked as selected?

### getIterator

    protected java.util.Iterator getIterator(java.lang.Object collection)
                                      throws javax.servlet.jsp.JspException

  Return an iterator for the options collection.

  Parameters:
    `collection` - Collection to be iterated over
  Throws:
    `javax.servlet.jsp.JspException` - if an error occurs

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2003 - Apache Software Foundation