java.lang.Object
org.apache.wicket.behavior.Behavior
org.apache.wicket.behavior.AbstractAjaxBehavior
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior
- All Implemented Interfaces:
Serializable
,IComponentAwareEventSink
,IRequestListener
,IComponentAwareHeaderContributor
,IClusterable
- Direct Known Subclasses:
AbstractAjaxTimerBehavior
,AbstractAutoCompleteBehavior
,AjaxDownloadBehavior
,AjaxEditableLabel.EditorAjaxBehavior
,AjaxEventBehavior
,AjaxNewWindowNotifyingBehavior
,AjaxOnDomReadyClientInfoBehavior
The base class for Wicket's default AJAX implementation.
- Since:
- 1.2
- Author:
- Igor Vaynberg (ivaynberg)
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final ResourceReference
reference to the default indicator gif file. -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected String
Finds the markup id of the indicator.protected final AjaxRequestAttributes
getCallbackFunction
(CallbackParameter... extraParameters) Generates a javascript function that can take parameters and performs an AJAX call which includes these parameters.getCallbackFunctionBody
(CallbackParameter... extraParameters) Generates the body the callback function.protected CharSequence
getCallbackScript
(Component component) protected void
onBind()
Subclasses should call super.onBind()protected Form.MethodMismatchResponse
This method decides whether to continue processing or to abort the Ajax request when the method is different than theAjaxRequestAttributes.getMethod()
's method.final void
Called when a request is received.protected void
postprocessConfiguration
(com.github.openjson.JSONObject attributesJson, Component component) Gives a chance to modify the JSON attributesJson that is going to be used as attributes for the Ajax call.protected final CharSequence
renderAjaxAttributes
(Component component) { u: 'editable-label?protected final CharSequence
renderAjaxAttributes
(Component component, AjaxRequestAttributes attributes) void
renderHead
(Component component, IHeaderResponse response) Render to the web response whatever the component wants to contribute to the head section.protected abstract void
respond
(AjaxRequestTarget target) protected void
updateAjaxAttributes
(AjaxRequestAttributes attributes) Gives a chance to the specializations to modify the attributes.Methods inherited from class org.apache.wicket.behavior.AbstractAjaxBehavior
afterRender, bind, getCallbackUrl, getComponent, onComponentRendered, onComponentTag, onComponentTag, onUnbind, unbind
Methods inherited from class org.apache.wicket.behavior.Behavior
beforeRender, canCallListener, detach, getStatelessHint, isEnabled, isTemporary, onAttribute, onConfigure, onEvent, onException, onRemove, onTag
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.wicket.IRequestListener
rendersPage
-
Field Details
-
INDICATOR
reference to the default indicator gif file.
-
-
Constructor Details
-
AbstractDefaultAjaxBehavior
public AbstractDefaultAjaxBehavior()
-
-
Method Details
-
onBind
Subclasses should call super.onBind()- Overrides:
onBind
in classAbstractAjaxBehavior
- See Also:
-
renderHead
Description copied from class:Behavior
Render to the web response whatever the component wants to contribute to the head section.- Specified by:
renderHead
in interfaceIComponentAwareHeaderContributor
- Overrides:
renderHead
in classBehavior
- Parameters:
component
- component which is contributing to the response. This parameter is here to give the component as the context for component-awares implementing this interfaceresponse
- Response object- See Also:
-
getAttributes
- Returns:
- the Ajax settings for this behavior
- Since:
- 6.0
-
onMethodMismatch
This method decides whether to continue processing or to abort the Ajax request when the method is different than theAjaxRequestAttributes.getMethod()
's method.- Returns:
- response that can either abort or continue the processing of the Ajax request
-
updateAjaxAttributes
Gives a chance to the specializations to modify the attributes.- Parameters:
attributes
-- Since:
- 6.0
-
renderAjaxAttributes
{ u: 'editable-label?6-1.IBehaviorListener.0-text1-label', // url m: 'POST', // method name. Default: 'GET' c: 'label7', // component id (String) or window for page e: 'click', // event name sh: [], // list of success handlers fh: [], // list of failure handlers pre: [], // list of preconditions. If empty set default : Wicket.$(settings{c}) !== null ep: {}, // extra parameters async: true|false, // asynchronous XHR or not ch: 'someName|d', // AjaxChannel i: 'indicatorId', // indicator component id ad: true, // allow default }
- Parameters:
component
- the component with that behavior- Returns:
- the attributes as string in JSON format
-
renderAjaxAttributes
protected final CharSequence renderAjaxAttributes(Component component, AjaxRequestAttributes attributes) - Parameters:
component
-attributes
-- Returns:
- the attributes as string in JSON format
-
postprocessConfiguration
protected void postprocessConfiguration(com.github.openjson.JSONObject attributesJson, Component component) throws com.github.openjson.JSONException Gives a chance to modify the JSON attributesJson that is going to be used as attributes for the Ajax call.- Parameters:
attributesJson
- the JSON object created by #renderAjaxAttributes()component
- the component with the attached Ajax behavior- Throws:
com.github.openjson.JSONException
- thrown if an error occurs while modifying attributesJson argument
-
getCallbackScript
- Returns:
- javascript that will generate an ajax GET request to this behavior with its assigned component
-
getCallbackScript
- Parameters:
component
- the component to use when generating the attributes- Returns:
- script that can be used to execute this Ajax behavior.
-
getCallbackFunction
Generates a javascript function that can take parameters and performs an AJAX call which includes these parameters. The generated code looks like this:function(param1, param2) { var attrs = attrsJson; var params = {'param1': param1, 'param2': param2}; attrs.ep = jQuery.extend(attrs.ep, params); Wicket.Ajax.ajax(attrs); }
- Parameters:
extraParameters
-- Returns:
- A function that can be used as a callback function in javascript
-
getCallbackFunctionBody
Generates the body the callback function. To embed this code directly into a piece of javascript, make sure any context parameters are available as local variables, global variables or within the closure.- Parameters:
extraParameters
-- Returns:
- The body of the callback function.
-
findIndicatorId
Finds the markup id of the indicator. The default search order is: component, behavior, component's parent hierarchy.- Returns:
- markup id or
null
if no indicator found
-
onRequest
Description copied from interface:IRequestListener
Called when a request is received. -
respond
- Parameters:
target
- The AJAX target
-