-
- All Superinterfaces:
- Behavior
- All Known Implementing Classes:
- AjaxBehavior, ClientBehaviorBase
public interface ClientBehavior extends Behavior
ClientBehavior is the base contract for
Behavior
s that attach script content to client-side events exposed byClientBehaviorHolder
components. Instances ofClientBehavior
may be attached to components that implement theClientBehaviorHolder
contract by callingClientBehaviorHolder.addClientBehavior(java.lang.String, javax.faces.component.behavior.ClientBehavior)
. Once aClientBehavior
has been attached to aClientBehaviorHolder
component, the component callsgetScript(javax.faces.component.behavior.ClientBehaviorContext)
to obtain the behavior's script and the component wires this up to the appropriate client-side event handler. Note that the script content returned by this method is always in-line script content. If the implementing class wants to invoke functions defined in other script resources, the implementing class must use theResourceDependency
orResourceDependencies
annotation.- Since:
- 2.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method and Description void
decode(FacesContext context, UIComponent component)
Decode any new state of this
ClientBehavior
from the request contained in the specifiedFacesContext
.Set<ClientBehaviorHint>
getHints()
Returns hints that describe the behavior of the ClientBehavior implementation.
String
getScript(ClientBehaviorContext behaviorContext)
Return the script that implements this ClientBehavior's client-side logic.
-
Methods inherited from interface javax.faces.component.behavior.Behavior
broadcast
-
-
-
-
Method Detail
-
getScript
String getScript(ClientBehaviorContext behaviorContext)
Return the script that implements this ClientBehavior's client-side logic.
ClientBehavior.getScript() implementations are allowed to return null to indicate that no script is required for this particular getScript() call. For example, a ClientBehavior implementation may return null if the Behavior is disabled.
- Parameters:
behaviorContext
- theClientBehaviorContext
that provides properties that might influence this getScript() call. Note that ClientBehaviorContext instances are short-lived objects that are only valid for the duration of the call to getScript(). ClientBehavior implementations must not hold onto references to ClientBehaviorContexts.- Returns:
- script that provides the client-side behavior, or null if no script is required.
- Throws:
NullPointerException
- ifbehaviorContext
isnull
- Since:
- 2.0
-
decode
void decode(FacesContext context, UIComponent component)
Decode any new state of this
ClientBehavior
from the request contained in the specifiedFacesContext
.During decoding, events may be enqueued for later processing (by event listeners who have registered an interest), by calling
queueEvent()
. Default implementation delegates decoding toClientBehaviorRenderer.decode(FacesContext, UIComponent, ClientBehavior)
- Parameters:
context
-FacesContext
for the request we are processingcomponent
-UIComponent
the component associated with thisBehavior
- Throws:
NullPointerException
- ifcontext
orcomponent
is
null
.- Since:
- 2.0
-
getHints
Set<ClientBehaviorHint> getHints()
Returns hints that describe the behavior of the ClientBehavior implementation. The hints may impact how Renderers behave in the presence of Behaviors. For example, when a Behavior that specifies
ClientBehaviorHint.SUBMITTING
is present, the Renderer may choose to alternate the scripts that it generates itself.- Returns:
- a non-null, unmodifiable collection of ClientBehaviorHints.
- Since:
- 2.0
-
-
Document created the 11/06/2005, last modified the 18/08/2025
Source of the printed document:https://www.gaudry.be/en/java-api-javaee-rf-javax/faces/component/behavior/ClientBehavior.html
The infobrol is a personal site whose content is my sole responsibility. The text is available under CreativeCommons license (BY-NC-SA). More info on the terms of use and the author.
References
These references and links indicate documents consulted during the writing of this page, or which may provide additional information, but the authors of these sources can not be held responsible for the content of this page.
The author of this site is solely responsible for the way in which the various concepts, and the freedoms that are taken with the reference works, are presented here. Remember that you must cross multiple source information to reduce the risk of errors.