Class Select

Direct Known Subclasses:
UpDownSelect

public class Select extends ListUIBean
Render an HTML input tag of type select.

Examples

 

 <s:select label="Pets"
        name="petIds"
        list="petDao.pets"
        listKey="id"
        listValue="name"
        multiple="true"
        size="3"
        required="true"
        value="%{petDao.pets.{id}}"
 />

 <s:select label="Months"
        name="months"
        headerKey="-1" headerValue="Select Month"
        list="#{'01':'Jan', '02':'Feb', [...]}"
        value="selectedMonth"
        required="true"
 />

 // The month id (01, 02, ...) returned by the getSelectedMonth() call
 // against the stack will be auto-selected

 
 

Note: For any of the tags that use lists (select probably being the most ubiquitous), which uses the OGNL list notation (see the "months" example above), it should be noted that the map key created (in the months example, the '01', '02', etc.) is typed. '1' is a char, '01' is a String, "1" is a String. This is important since if the value returned by your "value" attribute is NOT the same type as the key in the "list" attribute, they WILL NOT MATCH, even though their String values may be equivalent. If they don't match, nothing in your list will be auto-selected.

  • Field Details

  • Constructor Details

    • Select

      public Select(ValueStack stack, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
  • Method Details

    • getDefaultTemplate

      protected String getDefaultTemplate()
      Description copied from class: UIBean
      A contract that requires each concrete UI Tag to specify which template should be used as a default. For example, the CheckboxTab might return "checkbox.vm" while the RadioTag might return "radio.vm". This value not begin with a '/' unless you intend to make the path absolute rather than relative to the current theme.
      Specified by:
      getDefaultTemplate in class UIBean
      Returns:
      The name of the template to be used as the default.
    • evaluateExtraParams

      public void evaluateExtraParams()
      Overrides:
      evaluateExtraParams in class ListUIBean
    • setEmptyOption

      public void setEmptyOption(String emptyOption)
    • setHeaderKey

      public void setHeaderKey(String headerKey)
    • setHeaderValue

      public void setHeaderValue(String headerValue)
    • setMultiple

      public void setMultiple(String multiple)
    • setSize

      public void setSize(String size)