javax.faces.component
Class UICommand

java.lang.Object
  extended by javax.faces.component.UIComponent
      extended by javax.faces.component.UIComponentBase
          extended by javax.faces.component.UICommand
All Implemented Interfaces:
EventListener, ActionSource, ActionSource2, PartialStateHolder, StateHolder, TransientStateHolder, ComponentSystemEventListener, FacesListener, SystemEventListenerHolder

@JSFComponent(defaultRendererType="javax.faces.Button")
public class UICommand
extends UIComponentBase
implements ActionSource2

UICommand is a base abstraction for components that implement ActionSource.


Field Summary
static String COMPONENT_FAMILY
           
static String COMPONENT_TYPE
           
 
Fields inherited from class javax.faces.component.UIComponent
ATTRS_WITH_DECLARED_DEFAULT_VALUES, BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, HONOR_CURRENT_COMPONENT_ATTRIBUTES_PARAM_NAME, VIEW_LOCATION_KEY
 
Constructor Summary
UICommand()
          Construct an instance of the UICommand.
 
Method Summary
 void addActionListener(ActionListener listener)
           
 void broadcast(FacesEvent event)
          Invoke any listeners attached to this object which are listening for an event whose type matches the specified event's runtime type.
 MethodBinding getAction()
          Deprecated. Use getActionExpression() instead.
 javax.el.MethodExpression getActionExpression()
          The action to take when this command is invoked.
 MethodBinding getActionListener()
          Deprecated.  
 ActionListener[] getActionListeners()
          Event delivered when the "action" of the component has been invoked; for example, by clicking on a button.
 String getFamily()
           
 Object getValue()
          The text to display to the user for this command component.
 boolean isImmediate()
          A boolean value that identifies the phase during which action events should fire.
 void queueEvent(FacesEvent event)
           
 void removeActionListener(ActionListener listener)
           
 void setAction(MethodBinding action)
          Deprecated. Use setActionExpression instead.
 void setActionExpression(javax.el.MethodExpression actionExpression)
           
 void setActionListener(MethodBinding actionListener)
          Deprecated.  
 void setImmediate(boolean immediate)
           
 void setValue(Object value)
           
 
Methods inherited from class javax.faces.component.UIComponentBase
addClientBehavior, addFacesListener, clearInitialState, decode, encodeAll, encodeBegin, encodeChildren, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getRendersChildren, getValueBinding, initialStateMarked, invokeOnComponent, isRendered, isTransient, markInitialState, processDecodes, processRestoreState, processSaveState, processUpdates, processValidators, removeFacesListener, restoreAttachedState, restoreState, saveAttachedState, saveState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding, visitTree
 
Methods inherited from class javax.faces.component.UIComponent
getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getListenersForEventClass, getNamingContainer, getResourceBundleMap, getStateHelper, getStateHelper, getTransientStateHelper, getTransientStateHelper, getValueExpression, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, restoreTransientState, saveTransientState, setInView, setValueExpression, subscribeToEvent, unsubscribeFromEvent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMPONENT_TYPE

public static final String COMPONENT_TYPE
See Also:
Constant Field Values

COMPONENT_FAMILY

public static final String COMPONENT_FAMILY
See Also:
Constant Field Values
Constructor Detail

UICommand

public UICommand()
Construct an instance of the UICommand.

Method Detail

getAction

public MethodBinding getAction()
Deprecated. Use getActionExpression() instead.

Specifies the action to take when this command is invoked.

If the value is an expression, it is expected to be a method binding EL expression that identifies an action method. An action method accepts no parameters and has a String return value, called the action outcome, that identifies the next view displayed. The phase that this event is fired in can be controlled via the immediate attribute.

If the value is a string literal, it is treated as a navigation outcome for the current view. This is functionally equivalent to a reference to an action method that returns the string literal.

Specified by:
getAction in interface ActionSource

setAction

public void setAction(MethodBinding action)
Deprecated. Use setActionExpression instead.

Specified by:
setAction in interface ActionSource

broadcast

public void broadcast(FacesEvent event)
               throws AbortProcessingException
Description copied from class: UIComponentBase
Invoke any listeners attached to this object which are listening for an event whose type matches the specified event's runtime type.

This method does not propagate the event up to parent components, ie listeners attached to parent components don't automatically get called.

If any of the listeners throws AbortProcessingException then that exception will prevent any further listener callbacks from occurring, and the exception propagates out of this method without alteration.

ActionEvent events are typically queued by the renderer associated with this component in its decode method; ValueChangeEvent events by the component's validate method. In either case the event's source property references a component. At some later time the UIViewRoot component iterates over its queued events and invokes the broadcast method on each event's source object.

Overrides:
broadcast in class UIComponentBase
Parameters:
event - must not be null.
Throws:
AbortProcessingException

queueEvent

public void queueEvent(FacesEvent event)
Overrides:
queueEvent in class UIComponentBase

isImmediate

@JSFProperty
public boolean isImmediate()
A boolean value that identifies the phase during which action events should fire.

During normal event processing, action methods and action listener methods are fired during the "invoke application" phase of request processing. If this attribute is set to "true", these methods are fired instead at the end of the "apply request values" phase.

Specified by:
isImmediate in interface ActionSource

setImmediate

public void setImmediate(boolean immediate)
Specified by:
setImmediate in interface ActionSource

getValue

@JSFProperty
public Object getValue()
The text to display to the user for this command component.


setValue

public void setValue(Object value)

getActionExpression

@JSFProperty(stateHolder=true,
             returnSignature="java.lang.Object",
             jspName="action",
             clientEvent="action")
public javax.el.MethodExpression getActionExpression()
The action to take when this command is invoked.

If the value is an expression, it is expected to be a method binding EL expression that identifies an action method. An action method accepts no parameters and has a String return value, called the action outcome, that identifies the next view displayed. The phase that this event is fired in can be controlled via the immediate attribute.

If the value is a string literal, it is treated as a navigation outcome for the current view. This is functionally equivalent to a reference to an action method that returns the string literal.

Specified by:
getActionExpression in interface ActionSource2

setActionExpression

public void setActionExpression(javax.el.MethodExpression actionExpression)
Specified by:
setActionExpression in interface ActionSource2

getActionListener

@JSFProperty(stateHolder=true,
             returnSignature="void",
             methodSignature="javax.faces.event.ActionEvent")
public MethodBinding getActionListener()
Deprecated. 

A method binding EL expression that identifies an action listener method to be invoked if this component is activated by the user.

An action listener method accepts a parameter of type javax.faces.event.ActionEvent and returns void. The phase that this event is fired in can be controlled via the immediate attribute.

Specified by:
getActionListener in interface ActionSource

setActionListener

@JSFProperty(returnSignature="void",
             methodSignature="javax.faces.event.ActionEvent")
public void setActionListener(MethodBinding actionListener)
Deprecated. 

Specified by:
setActionListener in interface ActionSource

addActionListener

public void addActionListener(ActionListener listener)
Specified by:
addActionListener in interface ActionSource

removeActionListener

public void removeActionListener(ActionListener listener)
Specified by:
removeActionListener in interface ActionSource

getActionListeners

@JSFListener(event="javax.faces.event.ActionEvent",
             phases="Invoke Application, Apply Request Values")
public ActionListener[] getActionListeners()
Event delivered when the "action" of the component has been invoked; for example, by clicking on a button. The action may result in page navigation.

Specified by:
getActionListeners in interface ActionSource

getFamily

public String getFamily()
Specified by:
getFamily in class UIComponent


Copyright © 2014 The Apache Software Foundation. All Rights Reserved.