Overview | Library | Tag | Help
| FRAMES NO FRAMES

## h
Tag commandButton

Renders an HTML "input" element.

Decode Behavior

Obtain the `Map` from the "requestParameterMap" property of the `ExternalContext`. If the value in the `Map` for the value of the "clientId" property of the component is `null`, create a String by concatenating the value of the "clientId" property of the component with the String ".x" (without the quotes). Create another String in the same manner, but concatenate ".y" (without the quotes). If `null` is the value in the `Map` for both Strings, return from `decode()`. If the value in the `Map` for the value of the "clientId" property of the component is not `null`, get the value of the "type" attribute, and convert it to lower case. If the result is equal to the String "reset" (without the quotes), return from `decode()`. Otherwise, create a `javax.faces.event.ActionEvent` around the component, and pass it to the `queueEvent()` method of the component, which must be an instance of `UICommand`.

Encode Behavior

Render the clientId of the component as the value of the "name" attribute. Render the current value of the component as the value of the "value" attribute. If "image" attribute is specified render it as the value of the "src" attribute after passing it to the `getResourceURL()` method of the `ViewHandler` for this application, and passing the result through the `encodeResourceURL()` method of the `ExternalContext`. Note that calling `getResourceURL()` will prefix the context-root of the current application if the value of the "src" attribute starts with "/". When handling the "image" attribute, the value must not be escaped. For example, `&` must not be turned into `&amp;`. If the "styleClass" attribute is specified, render its value as the value of the "class" attribute. If the user has specified an "onclick" attribute, append that JavaScript to any existing JavaScript already being output by the implementation before rendering.

If the component being rendered by this renderer has any `UIParameter` children, each one of them must be rendered using the renderer for component-family: "javax.faces.Input" and renderer-type: "javax.faces.Hidden". For discussion, this is called the hiddenRenderer. A component with component-type "javax.faces.Input" must be created for local use in rendering each `UIParameter` child. The "id" property of the temporary component must be set to the "name" of the `UIParameter`. The "value" property of the temporary component must be set to the "value" of the `UIParameter`. For each `UIParameter` child, the hiddenRenderer must have its `encodeBegin()`, `encodeChildren()`, and `encodeEnd()` methods called, in order, passing the temporary component as the second argument.

Tag Information
Tag Class | .CommandButtonTag
TagExtraInfo Class | None
Body Content | JSP
Display Name | None

Attributes
Name | Required | Request-time | Type | Description
action | false | false | `javax.el.MethodExpression` (signature must match `java.lang.Object action()`) | MethodExpression representing the application action to invoke when this component is activated by the user. The expression must evaluate to a public method that takes no parameters, and returns an Object (the toString() of which is called to derive the logical outcome) which is passed to the NavigationHandler for this application.
actionListener | false | false | `javax.el.MethodExpression` (signature must match `void actionListener(javax.faces.event.ActionEvent)`) | MethodExpression representing an action listener method that will be notified when this component is activated by the user. The expression must evaluate to a public method that takes an ActionEvent parameter, with a return type of void, or to a public method that takes no arguments with a return type of void. In the latter case, the method has no way of easily knowing where the event came from, but this can be useful in cases where a notification is needed that "some action happened".
id | false | true | `java.lang.String` | The component identifier for this component. This value must be unique within the closest parent component that is a naming container.
immediate | false | false | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating that, if this component is activated by the user, notifications should be delivered to interested listeners and actions immediately (that is, during Apply Request Values phase) rather than waiting until Invoke Application phase.
rendered | false | false | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating whether or not this component should be rendered (during Render Response Phase), or processed on any subsequent form submit. The default value for this property is true.
value | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.Object`) | The current value of this component.
accesskey | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Access key that, when pressed, transfers focus to this element.
alt | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Alternate textual description of the element rendered by this component.
dir | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Direction indication for text that does not inherit directionality. Valid values are "LTR" (left-to-right) and "RTL" (right-to-left).
disabled | false | false | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating that this element must never receive focus or be included in a subsequent submit. A value of false causes no attribute to be rendered, while a value of true causes the attribute to be rendered as disabled="disabled".
image | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Absolute or relative URL of the image to be displayed for this button. If specified, this "input" element will be of type "image". Otherwise, it will be of the type specified by the "type" property with a label specified by the "value" property. Note that if the value of this attribute starts with "/", the rendered value for this attribute will be prefixed with the context-root for this application.
label | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | A localized user presentable name for this component.
lang | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Code describing the language used in the generated markup for this component.
onblur | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when this element loses focus.
onchange | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when this element loses focus and its value has been modified since gaining focus.
onclick | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is clicked over this element.
ondblclick | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is double clicked over this element.
onfocus | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when this element receives focus.
onkeydown | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a key is pressed down over this element.
onkeypress | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a key is pressed and released over this element.
onkeyup | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a key is released over this element.
onmousedown | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is pressed down over this element.
onmousemove | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is moved within this element.
onmouseout | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is moved away from this element.
onmouseover | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is moved onto this element.
onmouseup | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when a pointer button is released over this element.
onselect | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Javascript code executed when text within this element is selected by the user.
readonly | false | false | `javax.el.ValueExpression` (must evaluate to `boolean`) | Flag indicating that this component will prohibit changes by the user. The element may receive focus unless it has also been disabled. A value of false causes no attribute to be rendered, while a value of true causes the attribute to be rendered as readonly="readonly".
style | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | CSS style(s) to be applied when this component is rendered.
styleClass | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Space-separated list of CSS style class(es) to be applied when this element is rendered. This value must be passed through as the "class" attribute on generated markup.
tabindex | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Position of this element in the tabbing order for the current document. This value must be an integer between 0 and 32767.
title | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Advisory title information about markup elements generated for this component.
type | false | false | `javax.el.ValueExpression` (must evaluate to `java.lang.String`) | Type of button to create. Valid values are "submit", "button", and "reset". If not specified, or not a valid value, the default value is "submit".
binding | false | false | `javax.el.ValueExpression` (must evaluate to `javax.faces.component.UIComponent`) | The ValueExpression linking this component to a property in a backing bean

Variables
| No Variables Defined.

Overview | Library | Tag | Help
| FRAMES NO FRAMES

Output Generated by Tag Library Documentation Generator.