org.apache.struts2.components

## Class UpDownSelect

- java.lang.Object
- - org.apache.struts2.components.Component
  - - org.apache.struts2.components.UIBean
    - - org.apache.struts2.components.ListUIBean
      - - org.apache.struts2.components.Select
        - - org.apache.struts2.components.UpDownSelect

-     public class UpDownSelect
      extends Select

  Create a Select component with buttons to move the elements in the select component up and down. When the containing form is submited, its elements will be submitted in the order they are arranged (top to bottom).

       <!-- Example 1: simple example -->
       <s:updownselect
       list="#{'england':'England', 'america':'America', 'germany':'Germany'}"
       name="prioritisedFavouriteCountries"
       headerKey="-1"
       headerValue="--- Please Order Them Accordingly ---"
       emptyOption="true" />

       <!-- Example 2: more complex example -->
       <s:updownselect
       list="defaultFavouriteCartoonCharacters"
       name="prioritisedFavouriteCartoonCharacters"
       headerKey="-1"
       headerValue="--- Please Order ---"
       emptyOption="true"
       allowMoveUp="true"
       allowMoveDown="true"
       allowSelectAll="true"
       moveUpLabel="Move Up"
       moveDownLabel="Move Down"
       selectAllLabel="Select All" />

  @s.tag name="updownselect" tld-body-content="JSP" tld-tag-class="org.apache.struts2.views.jsp.ui.UpDownSelectTag" description="Render a up down select element"

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `allowMoveDown`
    `protected String` | `allowMoveUp`
    `protected String` | `allowSelectAll`
    `protected String` | `moveDownLabel`
    `protected String` | `moveUpLabel`
    `protected String` | `selectAllLabel`
    `static String` | `TEMPLATE`

    - ### Fields inherited from class org.apache.struts2.components.Select

      `emptyOption, headerKey, headerValue, multiple, size`

    - ### Fields inherited from class org.apache.struts2.components.ListUIBean

      `list, listCssClass, listCssStyle, listKey, listLabelKey, listTitle, listValue, listValueKey, throwExceptionOnNullValueAttribute`

    - ### Fields inherited from class org.apache.struts2.components.UIBean

      `accesskey, ATTR_FIELD_VALUE, ATTR_NAME_VALUE, ATTR_VALUE, cspNonceReader, cssClass, cssErrorClass, cssErrorStyle, cssStyle, defaultTemplateDir, defaultUITheme, disabled, dynamicAttributes, errorPosition, id, javascriptTooltip, key, label, labelPosition, labelSeparator, name, onblur, onchange, onclick, ondblclick, onfocus, onkeydown, onkeypress, onkeyup, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onselect, request, requiredLabel, requiredPosition, response, tabindex, template, templateDir, templateEngineManager, templateSuffix, theme, title, tooltip, tooltipConfig, tooltipCssClass, tooltipDelay, tooltipIconPath, uiStaticContentPath, uiThemeExpansionToken, value`

    - ### Fields inherited from class org.apache.struts2.components.Component

      `actionMapper, COMPONENT_STACK, devMode, escapeHtmlBody, parameters, performClearTagStateForTagPoolingServers, stack, standardAttributesMap, throwExceptionOnELFailure`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `UpDownSelect(ValueStack stack, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `evaluateParams()`
    `String` | `getAllowMoveDown()`
    `String` | `getAllowMoveUp()`
    `String` | `getAllowSelectAll()`
    `String` | `getDefaultTemplate()` A contract that requires each concrete UI Tag to specify which template should be used as a default.
    `String` | `getMoveDownLabel()`
    `String` | `getMoveUpLabel()`
    `String` | `getSelectAllLabel()`
    `void` | `setAllowMoveDown(String allowMoveDown)`
    `void` | `setAllowMoveUp(String allowMoveUp)`
    `void` | `setAllowSelectAll(String allowSelectAll)`
    `void` | `setMoveDownLabel(String moveDownLabel)`
    `void` | `setMoveUpLabel(String moveUpLabel)`
    `void` | `setSelectAllLabel(String selectAllLabel)`

    - ### Methods inherited from class org.apache.struts2.components.Select

      `evaluateExtraParams, setEmptyOption, setHeaderKey, setHeaderValue, setMultiple, setSize`

    - ### Methods inherited from class org.apache.struts2.components.ListUIBean

      `contains, getValueClassType, setList, setListCssClass, setListCssStyle, setListKey, setListLabelKey, setListTitle, setListValue, setListValueKey, setThrowExceptionOnNullValueAttribute`

    - ### Methods inherited from class org.apache.struts2.components.UIBean

      `addFormParameter, applyValueParameter, buildTemplateName, copyParams, enableAncestorFormCustomOnsubmit, end, ensureAttributeSafelyNotEscaped, escape, evaluateNameValue, getId, getTemplate, getTemplateDir, getTheme, getTooltipConfig, lazyEvaluation, mergeTemplate, populateComponentHtmlId, setAccesskey, setCspNonceReader, setCssClass, setCssErrorClass, setCssErrorStyle, setCssStyle, setDefaultTemplateDir, setDefaultUITheme, setDisabled, setDynamicAttributes, setErrorPosition, setId, setJavascriptTooltip, setKey, setLabel, setLabelPosition, setLabelSeparator, setName, setOnblur, setOnchange, setOnclick, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setOnselect, setRequiredLabel, setRequiredPosition, setStaticContentPath, setStyle, setTabindex, setTemplate, setTemplateDir, setTemplateEngineManager, setTheme, setTitle, setTooltip, setTooltipConfig, setTooltipCssClass, setTooltipDelay, setTooltipIconPath, setUIThemeExpansionToken, setValue`

    - ### Methods inherited from class org.apache.struts2.components.Component

      `addAllParameters, addParameter, clearStandardAttributesMap, completeExpression, determineActionURL, determineNamespace, end, escapeHtmlBody, fieldError, findAncestor, findString, findString, findValue, findValue, findValue, getAttributes, getComponentStack, getNamespace, getParameters, getPerformClearTagStateForTagPoolingServers, getStack, getStandardAttributes, isAcceptableExpression, isValidTagAttribute, popComponentStack, setActionMapper, setDevMode, setEscapeHtmlBody, setNotExcludedAcceptedPatterns, setPerformClearTagStateForTagPoolingServers, setThrowExceptionsOnELFailure, setUrlHelper, start, stripExpression, toString, usesBody`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### TEMPLATE

          public static final String TEMPLATE

      See Also:
        Constant Field Values

    - #### allowMoveUp

          protected String allowMoveUp

    - #### allowMoveDown

          protected String allowMoveDown

    - #### allowSelectAll

          protected String allowSelectAll

    - #### moveUpLabel

          protected String moveUpLabel

    - #### moveDownLabel

          protected String moveDownLabel

    - #### selectAllLabel

          protected String selectAllLabel

  - ### Constructor Detail

    - #### UpDownSelect

          public UpDownSelect(ValueStack stack,
                              javax.servlet.http.HttpServletRequest request,
                              javax.servlet.http.HttpServletResponse response)

  - ### Method Detail

    - #### getDefaultTemplate

          public 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.
      Overrides:
        `getDefaultTemplate` in class `Select`
      Returns:
        The name of the template to be used as the default.

    - #### evaluateParams

          public void evaluateParams()

      Overrides:
        `evaluateParams` in class `UIBean`

    - #### getAllowMoveUp

          public String getAllowMoveUp()

    - #### setAllowMoveUp

          public void setAllowMoveUp(String allowMoveUp)

    - #### getAllowMoveDown

          public String getAllowMoveDown()

    - #### setAllowMoveDown

          public void setAllowMoveDown(String allowMoveDown)

    - #### getAllowSelectAll

          public String getAllowSelectAll()

    - #### setAllowSelectAll

          public void setAllowSelectAll(String allowSelectAll)

    - #### getMoveUpLabel

          public String getMoveUpLabel()

    - #### setMoveUpLabel

          public void setMoveUpLabel(String moveUpLabel)

    - #### getMoveDownLabel

          public String getMoveDownLabel()

    - #### setMoveDownLabel

          public void setMoveDownLabel(String moveDownLabel)

    - #### getSelectAllLabel

          public String getSelectAllLabel()

    - #### setSelectAllLabel

          public void setSelectAllLabel(String selectAllLabel)

Copyright © 2000–2026 Apache Software Foundation. All rights reserved.