- All Known Subinterfaces:
ActionSource2
- All Known Implementing Classes:
HtmlCommandButton,HtmlCommandLink,HtmlCommandScript,UICommand,UIViewAction
ActionSource is an interface that may be implemented by any concrete UIComponent that wishes
to be a source of ActionEvents, including the ability to invoke application actions via the default
ActionListener mechanism.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddActionListener(ActionListener listener) Add a newActionListenerto the set of listeners interested in being notified whenActionEvents occur.default MethodExpressionReturn theMethodExpressionpointing at the application action to be invoked, if thisUIComponentis activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of theimmediateproperty.Return the set of registeredActionListeners for thisActionSourceinstance.booleanReturn a flag indicating that the defaultActionListenerprovided by the Jakarta Faces implementation should be executed immediately (that is, during Apply Request Values phase of the request processing lifecycle), rather than waiting until the Invoke Application phase.voidremoveActionListener(ActionListener listener) Remove an existingActionListener(if any) from the set of listeners interested in being notified whenActionEvents occur.default voidsetActionExpression(MethodExpression action) Set theMethodExpressionpointing at the appication action to be invoked, if thisUIComponentis activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of theimmediateproperty.voidsetImmediate(boolean immediate) Set the "immediate execution" flag for thisUIComponent.
-
Method Details
-
isImmediate
boolean isImmediate()Return a flag indicating that the default
ActionListenerprovided by the Jakarta Faces implementation should be executed immediately (that is, during Apply Request Values phase of the request processing lifecycle), rather than waiting until the Invoke Application phase. The default value for this property must befalse.- Returns:
trueif immediate,falseotherwise.
-
setImmediate
void setImmediate(boolean immediate) Set the "immediate execution" flag for this
UIComponent.- Parameters:
immediate- The new immediate execution flag
-
addActionListener
Add a new
ActionListenerto the set of listeners interested in being notified whenActionEvents occur.- Parameters:
listener- TheActionListenerto be added- Throws:
NullPointerException- iflistenerisnull
-
getActionListeners
ActionListener[] getActionListeners()Return the set of registered
ActionListeners for thisActionSourceinstance. If there are no registered listeners, a zero-length array is returned.- Returns:
- the action listeners, or a zero-length array.
-
removeActionListener
Remove an existing
ActionListener(if any) from the set of listeners interested in being notified whenActionEvents occur.- Parameters:
listener- TheActionListenerto be removed- Throws:
NullPointerException- iflistenerisnull
-
getActionExpression
Return the
MethodExpressionpointing at the application action to be invoked, if thisUIComponentis activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of theimmediateproperty.The default implementation throws
UnsupportedOperationExceptionand is provided for the sole purpose of not breaking existing applications that extendActionSource. Historically this method was declared inActionSource2for precisely this reason but default methods in interfaces weren't supported.- Returns:
- the action expression.
- Since:
- 4.1
-
setActionExpression
Set the
MethodExpressionpointing at the appication action to be invoked, if thisUIComponentis activated by the user, during the Apply Request Values or Invoke Application phase of the request processing lifecycle, depending on the value of theimmediateproperty.Any method referenced by such an expression must be public, with a return type of
String, and accept no parameters.The default implementation throws
UnsupportedOperationExceptionand is provided for the sole purpose of not breaking existing applications that extendActionSource. Historically this method was declared inActionSource2for precisely this reason but default methods in interfaces weren't supported.- Parameters:
action- The new method expression- Since:
- 4.1
-