Class AjaxBehavior

All Implemented Interfaces:
Behavior, ClientBehavior, PartialStateHolder, StateHolder

public class AjaxBehavior extends ClientBehaviorBase

An instance of this class is added as a ClientBehavior to a component using the ClientBehaviorHolder.addClientBehavior(java.lang.String, jakarta.faces.component.behavior.ClientBehavior) contract that components implement. The presence of this ClientBehavior will cause the rendering of JavaScript that produces an Ajax request using the specification public JavaScript API when the component is rendered.

If the component is an instance of EditableValueHolder, Where at all possible, the component must have the UI register the ajax event when the initial value is changed, not when focus is lost on the component.

Since:
2.0
  • Field Details

  • Constructor Details

    • AjaxBehavior

      public AjaxBehavior()
      Default constructor that just creates this instance.
  • Method Details

    • getRendererType

      public String getRendererType()
      Description copied from class: ClientBehaviorBase

      Returns the renderer type of the ClientBehaviorRenderer to use for the behavior. The default implementation returns null. Subclasses should either override this method to return a string that identifies the type of ClientBehaviorRenderer to use, or should override ClientBehaviorBase.getScript(jakarta.faces.component.behavior.ClientBehaviorContext) and perform script rendering locally in the ClientBehavior implementation.

      Overrides:
      getRendererType in class ClientBehaviorBase
      Returns:
      the default renderer type, which is null.
    • getHints

      public Set<ClientBehaviorHint> getHints()

      This method returns an unmodifiable Set containing the ClientBehaviorHint SUBMITTING.

      Specified by:
      getHints in interface ClientBehavior
      Overrides:
      getHints in class ClientBehaviorBase
      Returns:
      unmodifiable set containing the hint ClientBehaviorHint SUBMITTING.
      Since:
      2.0
    • getOnerror

      public String getOnerror()

      Return the String of JavaScript function name that will be used to identify the client callback function that should be run in the event of an error.

      Returns:
      the JavaScript function name of ONERROR.
      Since:
      2.0
    • setOnerror

      public void setOnerror(String onerror)

      Sets the JavaScript function name that will be used to identify the client callback function that should be run in the event of an error.

      Parameters:
      onerror - the error handling function name
      Since:
      2.0
    • getOnevent

      public String getOnevent()

      Return the String of JavaScript function name that will be used to identify the client callback function that should be run on the occurance of a client-side event.

      Returns:
      the JavaScript function name of ONEVENT.
      Since:
      2.0
    • setOnevent

      public void setOnevent(String onevent)

      Sets the JavaScript function name that will be used to identify the client callback function that should be run in response to event activity.

      Parameters:
      onevent - the event handling function name
      Since:
      2.0
    • getExecute

      public Collection<String> getExecute()

      Return a non-empty Collection<String> of component identifiers that will be used to identify components that should be processed during the execute phase of the request processing lifecycle.

      Note that the returned collection may be unmodifiable. Modifications should be performed by calling setExecute(java.util.Collection<java.lang.String>).

      Returns:
      the JavaScript function name of EXECUTE.
      Since:
      2.0
    • setExecute

      public void setExecute(Collection<String> execute)

      Sets the component identifiers that will be used to identify components that should be processed during the execute phase of the request processing lifecycle.

      Parameters:
      execute - the ids of components to execute
      Since:
      2.0
    • getDelay

      public String getDelay()

      Returns the delay value, or null if no value was set.

      Returns:
      the delay value.
      Since:
      2.2
    • setDelay

      public void setDelay(String delay)

      If less than delay milliseconds elapses between calls to request() only the most recent one is sent and all other requests are discarded. The default value of this option is 300. If the value of delay is the literal string 'none' without the quotes, no delay is used.

      Parameters:
      delay - the ajax delay value
      Since:
      2.2
    • getRender

      public Collection<String> getRender()

      Return a non-empty Collection<String> of component identifiers that will be used to identify components that should be processed during the render phase of the request processing lifecycle.

      Note that the returned collection may be unmodifiable. Modifications should be performed by calling setRender(java.util.Collection<java.lang.String>).

      Returns:
      the ids of components to render.
      Since:
      2.0
    • setRender

      public void setRender(Collection<String> render)

      Sets the component identifiers that will be used to identify components that should be processed during the render phase of the request processing lifecycle.

      Parameters:
      render - the ids of components to render
      Since:
      2.0
    • isResetValues

      public boolean isResetValues()

      Return the resetValues status of this behavior.

      Returns:
      the resetValues status.
      Since:
      2.2
    • setResetValues

      public void setResetValues(boolean resetValues)

      Set the resetValues status of this behavior.

      Parameters:
      resetValues - the resetValues status.
      Since:
      2.2
    • isDisabled

      public boolean isDisabled()

      Return the disabled status of this behavior.

      Returns:
      the disabled status of this behavior.
      Since:
      2.0
    • setDisabled

      public void setDisabled(boolean disabled)

      Sets the disabled status of this behavior.

      Parameters:
      disabled - the flag to be set.
      Since:
      2.0
    • isImmediate

      public boolean isImmediate()

      Return the immediate status of this behavior.

      Returns:
      the immediate status.
      Since:
      2.0
    • setImmediate

      public void setImmediate(boolean immediate)

      Sets the immediate status of this behavior.

      Parameters:
      immediate - the flag to be set.
      Since:
      2.0
    • isImmediateSet

      public boolean isImmediateSet()

      Tests whether the immediate attribute is specified. Returns true if the immediate attribute is specified, either as a locally set property or as a value expression. This information allows an associated client behavior renderer to fall back on the parent component's immediate status when immediate is not explicitly specified on the AjaxBehavior.

      Returns:
      the flag whether the immediate attribute is specified.
      Since:
      2.0
    • isResetValuesSet

      public boolean isResetValuesSet()

      Tests whether the resetValues attribute is specified. Returns true if the resetValues attribute is specified, either as a locally set property or as a value expression.

      Returns:
      the flag whether the resetValues attribute is specified.
      Since:
      2.2
    • getValueExpression

      public jakarta.el.ValueExpression getValueExpression(String name)

      Returns the ValueExpression used to calculate the value for the specified property name, if any.

      Parameters:
      name - Name of the property for which to retrieve a ValueExpression
      Returns:
      the ValueExpression.
      Throws:
      NullPointerException - if name is null
    • setValueExpression

      public void setValueExpression(String name, jakarta.el.ValueExpression binding)

      Sets the ValueExpression used to calculate the value for the specified property name.

      Parameters:
      name - Name of the property for which to set a ValueExpression
      binding - The ValueExpression to set, or null to remove any currently set ValueExpression
      Throws:
      NullPointerException - if name is null
    • addAjaxBehaviorListener

      public void addAjaxBehaviorListener(AjaxBehaviorListener listener)

      Add the specified AjaxBehaviorListener to the set of listeners registered to receive event notifications from this AjaxBehavior.

      Parameters:
      listener - The AjaxBehaviorListener to be registered
      Throws:
      NullPointerException - if listener is null
      Since:
      2.0
    • removeAjaxBehaviorListener

      public void removeAjaxBehaviorListener(AjaxBehaviorListener listener)

      Remove the specified AjaxBehaviorListener from the set of listeners registered to receive event notifications from this AjaxBehavior.

      Parameters:
      listener - The AjaxBehaviorListener to be removed
      Throws:
      NullPointerException - if listener is null
      Since:
      2.0
    • saveState

      public Object saveState(FacesContext context)
      Description copied from class: BehaviorBase
      Specified by:
      saveState in interface StateHolder
      Overrides:
      saveState in class BehaviorBase
      Parameters:
      context - the Faces context.
      Returns:
      the saved state.
    • restoreState

      public void restoreState(FacesContext context, Object state)
      Description copied from class: BehaviorBase
      Specified by:
      restoreState in interface StateHolder
      Overrides:
      restoreState in class BehaviorBase
      Parameters:
      context - the Faces context.
      state - the state.