Package org.apache.struts2.views.jsp.ui

# Class FormTag

java.lang.Object
jakarta.servlet.jsp.tagext.TagSupport
jakarta.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.AbstractClosingTag
org.apache.struts2.views.jsp.ui.FormTag

All Implemented Interfaces:
  `jakarta.servlet.jsp.tagext.BodyTag`, `jakarta.servlet.jsp.tagext.DynamicAttributes`, `jakarta.servlet.jsp.tagext.IterationTag`, `jakarta.servlet.jsp.tagext.JspTag`, `jakarta.servlet.jsp.tagext.Tag`, `Serializable`

public class FormTag extends AbstractClosingTag

See Also:
  - `Form`
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected String`
  `acceptcharset`
  `protected String`
  `action`
  `protected String`
  `enctype`
  `protected String`
  `focusElement`
  `protected boolean`
  `includeContext`
  `protected String`
  `method`
  `protected String`
  `namespace`
  `protected String`
  `onreset`
  `protected String`
  `onsubmit`
  `protected String`
  `portletMode`
  `protected String`
  `target`
  `protected String`
  `validate`
  `protected String`
  `windowState`

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

  `openTemplate`

  ### 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 jakarta.servlet.jsp.tagext.BodyTagSupport

  `bodyContent`

  ### Fields inherited from class jakarta.servlet.jsp.tagext.TagSupport

  `pageContext`

  ### Fields inherited from interface jakarta.servlet.jsp.tagext.BodyTag

  `EVAL_BODY_BUFFERED, EVAL_BODY_TAG`

  ### Fields inherited from interface jakarta.servlet.jsp.tagext.IterationTag

  `EVAL_BODY_AGAIN`

  ### Fields inherited from interface jakarta.servlet.jsp.tagext.Tag

  `EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `FormTag()`

- ## Method Summary

  Modifier and Type
  Method
  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.
  `Component`
  `getBean(ValueStack stack, jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse res)`
  `protected void`
  `populateParams()`
  Define method to populate component state based on the Tag attributes.
  `void`
  `setAcceptcharset(String acceptcharset)`
  `void`
  `setAction(String action)`
  `void`
  `setEnctype(String enctype)`
  `void`
  `setFocusElement(String focusElement)`
  `void`
  `setIncludeContext(boolean includeContext)`
  `void`
  `setMethod(String method)`
  `void`
  `setNamespace(String namespace)`
  `void`
  `setOnreset(String onreset)`
  `void`
  `setOnsubmit(String onsubmit)`
  `void`
  `setPerformClearTagStateForTagPoolingServers(boolean performClearTagStateForTagPoolingServers)`
  Must declare the setter at the descendant Tag class level in order for the tag handler to locate the method.
  `void`
  `setPortletMode(String portletMode)`
  `void`
  `setTarget(String target)`
  `void`
  `setValidate(String validate)`
  `void`
  `setWindowState(String windowState)`

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

  `setOpenTemplate`

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

  `setAccesskey, 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 jakarta.servlet.jsp.tagext.BodyTagSupport

  `doAfterBody, doInitBody, getBodyContent, getPreviousOut, setBodyContent`

  ### Methods inherited from class jakarta.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 jakarta.servlet.jsp.tagext.Tag

  `getParent, setPageContext, setParent`

- ## Field Details

  - ### action

    protected String action

  - ### target

    protected String target

  - ### enctype

    protected String enctype

  - ### method

    protected String method

  - ### namespace

    protected String namespace

  - ### validate

    protected String validate

  - ### onsubmit

    protected String onsubmit

  - ### onreset

    protected String onreset

  - ### portletMode

    protected String portletMode

  - ### windowState

    protected String windowState

  - ### acceptcharset

    protected String acceptcharset

  - ### focusElement

    protected String focusElement

  - ### includeContext

    protected boolean includeContext

- ## Constructor Details

  - ### FormTag

    public FormTag()

- ## Method Details

  - ### getBean

    public Component getBean(ValueStack stack, jakarta.servlet.http.HttpServletRequest req, jakarta.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 attributes. Descendants should override this method for custom behaviour, but should always call the ancestor method when doing so.
    Overrides:
      `populateParams` in class `AbstractClosingTag`

  - ### setAction

    public void setAction(String action)

  - ### setTarget

    public void setTarget(String target)

  - ### setEnctype

    public void setEnctype(String enctype)

  - ### setMethod

    public void setMethod(String method)

  - ### setNamespace

    public void setNamespace(String namespace)

  - ### setValidate

    public void setValidate(String validate)

  - ### setOnsubmit

    public void setOnsubmit(String onsubmit)

  - ### setOnreset

    public void setOnreset(String onreset)

  - ### setPortletMode

    public void setPortletMode(String portletMode)

  - ### setWindowState

    public void setWindowState(String windowState)

  - ### setAcceptcharset

    public void setAcceptcharset(String acceptcharset)

  - ### setFocusElement

    public void setFocusElement(String focusElement)

  - ### setIncludeContext

    public void setIncludeContext(boolean includeContext)

  - ### setPerformClearTagStateForTagPoolingServers

    public void setPerformClearTagStateForTagPoolingServers(boolean performClearTagStateForTagPoolingServers)
    Must declare the setter at the descendant Tag class level in order for the tag handler to locate the method.
    Overrides:
      `setPerformClearTagStateForTagPoolingServers` in class `AbstractClosingTag`
    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 `AbstractClosingTag`