org.apache.struts2.views.jsp.ui

## Class InputTransferSelectTag

- java.lang.Object
- - javax.servlet.jsp.tagext.TagSupport
  - - javax.servlet.jsp.tagext.BodyTagSupport
    - - org.apache.struts2.views.jsp.StrutsBodyTagSupport
      - - org.apache.struts2.views.jsp.ComponentTagSupport
        - - org.apache.struts2.views.jsp.ui.AbstractUITag
          - - org.apache.struts2.views.jsp.ui.AbstractListTag
            - - org.apache.struts2.views.jsp.ui.InputTransferSelectTag

- All Implemented Interfaces:
    Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.DynamicAttributes, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag

      public class InputTransferSelectTag
      extends AbstractListTag

  InputTransferSelect jsp tag.
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `addLabel`
    `protected String` | `allowRemoveAll`
    `protected String` | `allowUpDown`
    `protected String` | `buttonCssClass`
    `protected String` | `buttonCssStyle`
    `protected String` | `downLabel`
    `protected String` | `headerKey`
    `protected String` | `headerValue`
    `protected String` | `leftTitle`
    `protected String` | `multiple`
    `protected String` | `removeAllLabel`
    `protected String` | `removeLabel`
    `protected String` | `rightTitle`
    `protected String` | `size`
    `protected String` | `upLabel`

    - ### Fields inherited from class org.apache.struts2.views.jsp.ui.AbstractListTag

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

    - ### Fields inherited from class org.apache.struts2.views.jsp.ui.AbstractUITag

      `accesskey, cssClass, cssErrorClass, cssErrorStyle, cssStyle, disabled, dynamicAttributes, errorPosition, id, javascriptTooltip, key, label, labelPosition, labelSeparator, name, onblur, onchange, onclick, ondblclick, onfocus, onkeydown, onkeypress, onkeyup, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onselect, requiredLabel, requiredPosition, tabindex, template, templateDir, theme, title, tooltip, tooltipConfig, tooltipCssClass, tooltipDelay, tooltipIconPath, value`

    - ### Fields inherited from class org.apache.struts2.views.jsp.ComponentTagSupport

      `component`

    - ### Fields inherited from class javax.servlet.jsp.tagext.BodyTagSupport

      `bodyContent`

    - ### Fields inherited from class javax.servlet.jsp.tagext.TagSupport

      `pageContext`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.BodyTag

      `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.IterationTag

      `EVAL_BODY_AGAIN`

    - ### Fields inherited from interface javax.servlet.jsp.tagext.Tag

      `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `InputTransferSelectTag()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `clearTagStateForTagPoolingServers()` Provide a mechanism to clear tag state, to handle servlet container JSP tag pooling behaviour with some servers, such as Glassfish.
    `String` | `getAddLabel()`
    `String` | `getAllowRemoveAll()`
    `String` | `getAllowUpDown()`
    `Component` | `getBean(ValueStack stack, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)`
    `String` | `getButtonCssClass()`
    `String` | `getButtonCssStyle()`
    `String` | `getDownLabel()`
    `String` | `getHeaderKey()`
    `String` | `getHeaderValue()`
    `String` | `getLeftTitle()`
    `String` | `getMultiple()`
    `String` | `getRemoveAllLabel()`
    `String` | `getRemoveLabel()`
    `String` | `getRightTitle()`
    `String` | `getSize()`
    `String` | `getUpLabel()`
    `protected void` | `populateParams()` Define method to populate component state based on the Tag parameters.
    `void` | `setAddLabel(String addLabel)`
    `void` | `setAllowRemoveAll(String allowRemoveAll)`
    `void` | `setAllowUpDown(String allowUpDown)`
    `void` | `setButtonCssClass(String buttonCssClass)`
    `void` | `setButtonCssStyle(String buttonCssStyle)`
    `void` | `setDownLabel(String downLabel)`
    `void` | `setHeaderKey(String headerKey)`
    `void` | `setHeaderValue(String headerValue)`
    `void` | `setLeftTitle(String leftTitle)`
    `void` | `setMultiple(String multiple)`
    `void` | `setPerformClearTagStateForTagPoolingServers(boolean performClearTagStateForTagPoolingServers)` Request that the tag state be cleared during `StrutsBodyTagSupport.doEndTag()` processing, which may help with certain edge cases with tag logic running on servers that implement JSP Tag Pooling.
    `void` | `setRemoveAllLabel(String removeAllLabel)`
    `void` | `setRemoveLabel(String removeLabel)`
    `void` | `setRightTitle(String rightTitle)`
    `void` | `setSize(String size)`
    `void` | `setUpLabel(String upLabel)`

    - ### Methods inherited from class org.apache.struts2.views.jsp.ui.AbstractListTag

      `setList, setListCssClass, setListCssStyle, setListKey, setListLabelKey, setListTitle, setListValue, setListValueKey`

    - ### Methods inherited from class org.apache.struts2.views.jsp.ui.AbstractUITag

      `setAccesskey, setClass, setCssClass, setCssErrorClass, setCssErrorStyle, setCssStyle, setDisabled, setDynamicAttribute, setErrorPosition, setId, setJavascriptTooltip, setKey, setLabel, setLabelPosition, setLabelSeparator, setName, setOnblur, setOnchange, setOnclick, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setOnselect, setRequiredLabel, setRequiredPosition, setStyle, setTabindex, setTemplate, setTemplateDir, setTheme, setTitle, setTooltip, setTooltipConfig, setTooltipCssClass, setTooltipDelay, setTooltipIconPath, setValue`

    - ### Methods inherited from class org.apache.struts2.views.jsp.ComponentTagSupport

      `doEndTag, doStartTag, getComponent, populatePerformClearTagStateForTagPoolingServersParam`

    - ### Methods inherited from class org.apache.struts2.views.jsp.StrutsBodyTagSupport

      `findString, findValue, findValue, getBody, getPerformClearTagStateForTagPoolingServers, getStack, release, toString`

    - ### Methods inherited from class javax.servlet.jsp.tagext.BodyTagSupport

      `doAfterBody, doInitBody, getBodyContent, getPreviousOut, setBodyContent`

    - ### Methods inherited from class javax.servlet.jsp.tagext.TagSupport

      `findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setPageContext, setParent, setValue`

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

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

    - ### Methods inherited from interface javax.servlet.jsp.tagext.Tag

      `getParent, setPageContext, setParent`

- - ### Field Detail

    - #### size

          protected String size

    - #### multiple

          protected String multiple

    - #### allowRemoveAll

          protected String allowRemoveAll

    - #### allowUpDown

          protected String allowUpDown

    - #### leftTitle

          protected String leftTitle

    - #### rightTitle

          protected String rightTitle

    - #### buttonCssClass

          protected String buttonCssClass

    - #### buttonCssStyle

          protected String buttonCssStyle

    - #### addLabel

          protected String addLabel

    - #### removeLabel

          protected String removeLabel

    - #### removeAllLabel

          protected String removeAllLabel

    - #### upLabel

          protected String upLabel

    - #### downLabel

          protected String downLabel

    - #### headerKey

          protected String headerKey

    - #### headerValue

          protected String headerValue

  - ### Constructor Detail

    - #### InputTransferSelectTag

          public InputTransferSelectTag()

  - ### Method Detail

    - #### getBean

          public Component getBean(ValueStack stack,
                                   javax.servlet.http.HttpServletRequest req,
                                   javax.servlet.http.HttpServletResponse res)

      Specified by:
        `getBean` in class `ComponentTagSupport`

    - #### populateParams

          protected void populateParams()

      Description copied from class: `ComponentTagSupport`
      Define method to populate component state based on the Tag parameters.

      Descendants should override this method for custom behaviour, but should always call the ancestor method when doing so.

      Overrides:
        `populateParams` in class `AbstractListTag`

    - #### getSize

          public String getSize()

    - #### setSize

          public void setSize(String size)

    - #### getMultiple

          public String getMultiple()

    - #### setMultiple

          public void setMultiple(String multiple)

    - #### getAllowRemoveAll

          public String getAllowRemoveAll()

    - #### setAllowRemoveAll

          public void setAllowRemoveAll(String allowRemoveAll)

    - #### getAllowUpDown

          public String getAllowUpDown()

    - #### setAllowUpDown

          public void setAllowUpDown(String allowUpDown)

    - #### getLeftTitle

          public String getLeftTitle()

    - #### setLeftTitle

          public void setLeftTitle(String leftTitle)

    - #### getRightTitle

          public String getRightTitle()

    - #### setRightTitle

          public void setRightTitle(String rightTitle)

    - #### getButtonCssClass

          public String getButtonCssClass()

    - #### setButtonCssClass

          public void setButtonCssClass(String buttonCssClass)

    - #### getButtonCssStyle

          public String getButtonCssStyle()

    - #### setButtonCssStyle

          public void setButtonCssStyle(String buttonCssStyle)

    - #### getAddLabel

          public String getAddLabel()

    - #### setAddLabel

          public void setAddLabel(String addLabel)

    - #### getRemoveLabel

          public String getRemoveLabel()

    - #### setRemoveLabel

          public void setRemoveLabel(String removeLabel)

    - #### getRemoveAllLabel

          public String getRemoveAllLabel()

    - #### setRemoveAllLabel

          public void setRemoveAllLabel(String removeAllLabel)

    - #### getUpLabel

          public String getUpLabel()

    - #### setUpLabel

          public void setUpLabel(String upLabel)

    - #### getDownLabel

          public String getDownLabel()

    - #### setDownLabel

          public void setDownLabel(String downLabel)

    - #### getHeaderKey

          public String getHeaderKey()

    - #### setHeaderKey

          public void setHeaderKey(String headerKey)

    - #### getHeaderValue

          public String getHeaderValue()

    - #### setHeaderValue

          public void setHeaderValue(String headerValue)

    - #### setPerformClearTagStateForTagPoolingServers

          public void setPerformClearTagStateForTagPoolingServers(boolean performClearTagStateForTagPoolingServers)

      Description copied from class: `StrutsBodyTagSupport`
      Request that the tag state be cleared during `StrutsBodyTagSupport.doEndTag()` processing, which may help with certain edge cases with tag logic running on servers that implement JSP Tag Pooling. Note: Even though the Tag classes extend this class `StrutsBodyTagSupport`, and this method `StrutsBodyTagSupport.setPerformClearTagStateForTagPoolingServers(boolean)` exists in the method hierarchy, the JSP processing requires us to explicitly override it in every Tag class in order for the Tag handler method to be visible to the JSP processing. Defining a setter in the superclass alone is insufficient (results in "Cannot find a setter method for the attribute").

      See `StrutsBodyTagSupport.clearTagStateForTagPoolingServers()` for additional details. Warning: Setting this value to true may allow for the desired behaviour, but doing so may violate the JSP specification. Set to true at your own risk.

      Overrides:
        `setPerformClearTagStateForTagPoolingServers` in class `AbstractListTag`
      Parameters:
        `performClearTagStateForTagPoolingServers` - true if tag state should be cleared, false otherwise.

    - #### clearTagStateForTagPoolingServers

          protected void clearTagStateForTagPoolingServers()

      Description copied from class: `StrutsBodyTagSupport`
      Provide a mechanism to clear tag state, to handle servlet container JSP tag pooling behaviour with some servers, such as Glassfish.

      Usage: Override this method in descendant classes to clear any state that might cause issues should the servlet container re-use a cached instance of the tag object. If the descendant class does not declare any new field members then it should not be strictly necessary to call this method there. Typically that means calling the ancestor's `ComponentTagSupport.clearTagStateForTagPoolingServers()` method first, then resetting instance variables at the current level to their default state.

      Note: If the descendant overrides `StrutsBodyTagSupport.doEndTag()`, and does not call super.doEndTag(), then the descendant should call this method in the descendant doEndTag() method to ensure consistent clearing of tag state.

      Overrides:
        `clearTagStateForTagPoolingServers` in class `AbstractListTag`

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