Package org.apache.struts2.components

# Class Submit

java.lang.Object
org.apache.struts2.components.Component
org.apache.struts2.components.UIBean
org.apache.struts2.components.ClosingUIBean
org.apache.struts2.components.FormButton
org.apache.struts2.components.Submit

public class Submit extends FormButton
Render a submit button. The submit tag is used together with the form tag to provide asynchronous form submissions. The submit can have three different types of rendering:

- input: renders as html <input type="submit"...>
- image: renders as html <input type="image"...>
- button: renders as html <button type="submit"...>

Please note that the button type has advantages by adding the possibility to seperate the submitted value from the text shown on the button face, but has issues with Microsoft Internet Explorer at least up to 6.0

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `OPEN_TEMPLATE`
  `protected String`
  `src`
  `static final String`
  `TEMPLATE`

  ### Fields inherited from class org.apache.struts2.components.FormButton

  `action, method, type`

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

  `accesskey, ATTR_FIELD_VALUE, ATTR_NAME_VALUE, ATTR_VALUE, 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, attributes, COMPONENT_STACK, devMode, escapeHtmlBody, performClearTagStateForTagPoolingServers, stack, standardAttributesMap, throwExceptionOnELFailure`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Submit(ValueStack stack, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `end(Writer writer, String body)`
  Overrides to be able to render body in a template rather than always before the template
  `void`
  `evaluateExtraParams()`
  `void`
  `evaluateParams()`
  `String`
  `getDefaultOpenTemplate()`
  `protected String`
  `getDefaultTemplate()`
  A contract that requires each concrete UI Tag to specify which template should be used as a default.
  `void`
  `setEscapeHtmlBody(boolean escapeHtmlBody)`
  `void`
  `setSrc(String src)`
  `protected boolean`
  `supportsImageType()`
  Indicate whether the concrete button supports the type "image".
  `boolean`
  `usesBody()`
  Overwrite to set if body should be used.

  ### Methods inherited from class org.apache.struts2.components.FormButton

  `populateComponentHtmlId, setAction, setMethod, setType`

  ### Methods inherited from class org.apache.struts2.components.ClosingUIBean

  `setOpenTemplate, start`

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

  `addFormParameter, applyValueParameter, buildTemplateName, copyAttributes, enableAncestorFormCustomOnsubmit, ensureAttributeSafelyNotEscaped, escape, evaluateNameValue, getId, getTemplate, getTemplateDir, getTheme, getTooltipConfig, getValueClassType, lazyEvaluation, mergeTemplate, setAccesskey, 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

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

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

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

- ## Field Details

  - ### OPEN_TEMPLATE

    public static final String OPEN_TEMPLATE
    See Also:
      - Constant Field Values

  - ### TEMPLATE

    public static final String TEMPLATE
    See Also:
      - Constant Field Values

  - ### src

    protected String src

- ## Constructor Details

  - ### Submit

    public Submit(ValueStack stack, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)

- ## Method Details

  - ### getDefaultOpenTemplate

    public String getDefaultOpenTemplate()
    Specified by:
      `getDefaultOpenTemplate` in class `ClosingUIBean`

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

  - ### evaluateParams

    public void evaluateParams()
    Overrides:
      `evaluateParams` in class `UIBean`

  - ### evaluateExtraParams

    public void evaluateExtraParams()
    Overrides:
      `evaluateExtraParams` in class `FormButton`

  - ### supportsImageType

    protected boolean supportsImageType()
    Indicate whether the concrete button supports the type "image".
    Specified by:
      `supportsImageType` in class `FormButton`
    Returns:
      `true` to indicate type image is supported.

  - ### setSrc

    public void setSrc(String src)

  - ### setEscapeHtmlBody

    public void setEscapeHtmlBody(boolean escapeHtmlBody)

  - ### usesBody

    public boolean usesBody()
    Description copied from class: `Component`
    Overwrite to set if body should be used.
    Overrides:
      `usesBody` in class `Component`
    Returns:
      always false for this component.

  - ### end

    public boolean end(Writer writer, String body)
    Overrides to be able to render body in a template rather than always before the template
    Overrides:
      `end` in class `UIBean`
    Parameters:
      `writer` - the output writer.
      `body` - the rendered body.
    Returns:
      true if the body should be evaluated again