org.apache.struts2.views.jsp

## Class ElseTag

- 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.ElseTag

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

      public class ElseTag
      extends ComponentTagSupport

  See Also:
    `Else`, Serialized Form

- - ### Field Summary

    - ### 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

      `id, 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
    `ElseTag()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Component` | `getBean(ValueStack stack, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res)`
    `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.

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

      `clearTagStateForTagPoolingServers, doEndTag, doStartTag, getComponent, populateParams, 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, setId, 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`

- - ### Constructor Detail

    - #### ElseTag

          public ElseTag()

  - ### Method Detail

    - #### getBean

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

      Specified by:
        `getBean` in class `ComponentTagSupport`

    - #### 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 `StrutsBodyTagSupport`
      Parameters:
        `performClearTagStateForTagPoolingServers` - true if tag state should be cleared, false otherwise.

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