org.apache.struts2.components

## Class Checkbox

- java.lang.Object
- - org.apache.struts2.components.Component
  - - org.apache.struts2.components.UIBean
    - - org.apache.struts2.components.Checkbox

-     public class Checkbox
      extends UIBean

  Renders an HTML input element of type checkbox, populated by the specified property from the ValueStack.

  Examples

       JSP:
       <s:checkbox label="checkbox test" name="checkboxField1" value="aBoolean" fieldValue="true"/>

       Velocity:
       #tag( Checkbox "label=checkbox test" "name=checkboxField1" "value=aBoolean" )

       Resulting HTML (simple template, aBoolean == true):
       <input type="checkbox" name="checkboxField1" value="true" checked="checked" />

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected String` | `fieldValue`
    `protected String` | `submitUnchecked`
    `static String` | `TEMPLATE`

    - ### 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
    `Checkbox(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
    --- | ---
    `protected void` | `evaluateExtraParams()`
    `protected String` | `getDefaultTemplate()` A contract that requires each concrete UI Tag to specify which template should be used as a default.
    `protected Class<?>` | `getValueClassType()`
    `void` | `setFieldValue(String fieldValue)`
    `void` | `setLabelPosition(String labelPosition)`
    `void` | `setSubmitUnchecked(String submitUnchecked)`
    `void` | `setSubmitUncheckedGlobal(String submitUncheckedGlobal)`

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

      `addFormParameter, applyValueParameter, buildTemplateName, copyParams, enableAncestorFormCustomOnsubmit, end, ensureAttributeSafelyNotEscaped, escape, evaluateNameValue, evaluateParams, getId, getTemplate, getTemplateDir, getTheme, getTooltipConfig, lazyEvaluation, mergeTemplate, populateComponentHtmlId, setAccesskey, setCspNonceReader, setCssClass, setCssErrorClass, setCssErrorStyle, setCssStyle, setDefaultTemplateDir, setDefaultUITheme, setDisabled, setDynamicAttributes, setErrorPosition, setId, setJavascriptTooltip, setKey, setLabel, 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

    - #### fieldValue

          protected String fieldValue

    - #### submitUnchecked

          protected String submitUnchecked

  - ### Constructor Detail

    - #### Checkbox

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

  - ### Method Detail

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

    - #### evaluateExtraParams

          protected void evaluateExtraParams()

      Overrides:
        `evaluateExtraParams` in class `UIBean`

    - #### getValueClassType

          protected Class<?> getValueClassType()

      Overrides:
        `getValueClassType` in class `UIBean`

    - #### setSubmitUncheckedGlobal

          public void setSubmitUncheckedGlobal(String submitUncheckedGlobal)

    - #### setFieldValue

          public void setFieldValue(String fieldValue)

    - #### setSubmitUnchecked

          public void setSubmitUnchecked(String submitUnchecked)

    - #### setLabelPosition

          public void setLabelPosition(String labelPosition)

      Overrides:
        `setLabelPosition` in class `UIBean`

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