Class AjaxFallbackButton
- java.lang.Object
-
- org.apache.wicket.Component
-
- org.apache.wicket.MarkupContainer
-
- org.apache.wicket.markup.html.WebMarkupContainer
-
- org.apache.wicket.markup.html.form.LabeledWebMarkupContainer
-
- org.apache.wicket.markup.html.form.FormComponent<String>
-
- org.apache.wicket.markup.html.form.Button
-
- org.apache.wicket.ajax.markup.html.form.AjaxFallbackButton
-
- All Implemented Interfaces:
Serializable
,Iterable<Component>
,IEventSink
,IEventSource
,IFeedbackContributor
,IConverterLocator
,IGenericComponent<String,FormComponent<String>>
,IMetadataContext<Serializable,Component>
,IFormModelUpdateListener
,IFormSubmitter
,IFormSubmittingComponent
,IFormVisitorParticipant
,ILabelProvider<String>
,IHeaderContributor
,IRequestableComponent
,IHierarchical<Component>
,IClusterable
public abstract class AjaxFallbackButton extends Button
An ajax submit button that will degrade to a normal request if ajax is not available or javascript is disabled.- Since:
- 1.3
- Author:
- Jeremy Thomerson (jthomerson), Alastair Maw
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.wicket.markup.html.form.FormComponent
FLAG_CONVERT_EMPTY_INPUT_STRING_TO_NULL, VALUE_SEPARATOR
-
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING, RFLAG_CONTAINER_HAS_REMOVALS
-
-
Constructor Summary
Constructors Constructor Description AjaxFallbackButton(String id, Form<?> form)
Construct.AjaxFallbackButton(String id, IModel<String> model, Form<?> form)
Construct.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Form<?>
getForm()
Override to not throw exception if there is no parent form.protected boolean
isButtonEnabled()
Helper methods that both checks whether the link is enabled and whether the action ENABLE is allowed.protected AjaxFormSubmitBehavior
newAjaxEventBehavior(Form<?> form, String event)
void
onAfterSubmit()
Override this method to provide special submit handling in a multi-button form.protected void
onAfterSubmit(Optional<AjaxRequestTarget> target)
Callback for the onClick event.protected void
onComponentTag(ComponentTag tag)
Processes the component tag.void
onError()
Method that is invoked when form processing fails; for example, when there are validation errors.protected void
onError(Optional<AjaxRequestTarget> target)
Listener method invoked on form submit with errors.void
onSubmit()
Override this method to provide special submit handling in a multi-button form.protected void
onSubmit(Optional<AjaxRequestTarget> target)
Callback for the onClick event.protected boolean
shouldTriggerJavaScriptSubmitEvent()
Controls whether or not a JSsubmit
should be triggered on the submitting form.protected void
updateAjaxAttributes(AjaxRequestAttributes attributes)
-
Methods inherited from class org.apache.wicket.markup.html.form.Button
getDefaultFormProcessing, getOnClickScript, initModel, onComponentTagBody, renderHead, setDefaultFormProcessing, updateModel
-
Methods inherited from class org.apache.wicket.markup.html.form.FormComponent
add, add, checkRequired, clearInput, convertInput, convertValue, error, getConvertedInput, getDefaultLabel, getDefaultLabel, getInput, getInputAsArray, getInputName, getModelValue, getParameterValues, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isInputNullable, isMultiPart, isRequired, isValid, newValidatable, newValidationError, onBeforeRender, onDetach, onDisabled, onInvalid, onValid, processChildren, processInput, remove, reportRequiredError, setConvertedInput, setLabel, setModelValue, setRequired, setType, shouldTrimInput, trim, updateAutoLabels, updateAutoLabels, updateCollectionModel, valid, validate, validateRequired, validateValidators, visitComponentsPostOrder, visitFormComponentsPostOrder
-
Methods inherited from class org.apache.wicket.markup.html.form.LabeledWebMarkupContainer
getLabel
-
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession
-
Methods inherited from class org.apache.wicket.MarkupContainer
add, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findChildComponent, findComponentToDequeue, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, getRegionMarkup, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onInitialize, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildren
-
Methods inherited from class org.apache.wicket.Component
add, addStateChange, beforeRender, canCallListener, canCallListenerAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, createConverter, debug, detach, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMarkupTag, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, newMarkupSourcingStrategy, onAfterRender, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderPart, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlForListener, urlForListener, visitParents, visitParents, warn, wrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.wicket.markup.html.form.IFormSubmittingComponent
getInputName
-
Methods inherited from interface org.apache.wicket.IGenericComponent
getDefaultModel, getDefaultModelObject, getModel, getModelObject, setDefaultModel, setDefaultModelObject, setModel, setModelObject
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Constructor Detail
-
AjaxFallbackButton
public AjaxFallbackButton(String id, Form<?> form)
Construct.- Parameters:
id
-form
-
-
AjaxFallbackButton
public AjaxFallbackButton(String id, IModel<String> model, Form<?> form)
Construct.- Parameters:
id
-model
-form
-
-
-
Method Detail
-
newAjaxEventBehavior
protected AjaxFormSubmitBehavior newAjaxEventBehavior(Form<?> form, String event)
-
shouldTriggerJavaScriptSubmitEvent
protected boolean shouldTriggerJavaScriptSubmitEvent()
Controls whether or not a JSsubmit
should be triggered on the submitting form. False by default.- Returns:
- true if
submit
should be triggered, false otherwise
-
updateAjaxAttributes
protected void updateAjaxAttributes(AjaxRequestAttributes attributes)
-
onError
protected void onError(Optional<AjaxRequestTarget> target)
Listener method invoked on form submit with errors. If ajax failed and this event was generated via a normal submission, the target argument will be null.- Parameters:
target
-
-
onError
public final void onError()
Description copied from interface:IFormSubmitter
Method that is invoked when form processing fails; for example, when there are validation errors.- Specified by:
onError
in interfaceIFormSubmitter
- Overrides:
onError
in classButton
-
onSubmit
public final void onSubmit()
Description copied from class:Button
Override this method to provide special submit handling in a multi-button form. It is called whenever the user clicks this particular button, except if validation fails. This method will be called beforeForm.onSubmit()
.- Specified by:
onSubmit
in interfaceIFormSubmitter
- Overrides:
onSubmit
in classButton
-
onAfterSubmit
public final void onAfterSubmit()
Description copied from class:Button
Override this method to provide special submit handling in a multi-button form. It is called whenever the user clicks this particular button, except if validation fails. This method will be called afterForm.onSubmit()
.- Specified by:
onAfterSubmit
in interfaceIFormSubmitter
- Overrides:
onAfterSubmit
in classButton
-
getForm
public Form<?> getForm()
Description copied from class:Button
Override to not throw exception if there is no parent form.- Specified by:
getForm
in interfaceIFormSubmitter
- Overrides:
getForm
in classButton
- Returns:
- the parent form or
null
-
onSubmit
protected void onSubmit(Optional<AjaxRequestTarget> target)
Callback for the onClick event. If ajax failed and this event was generated via a normal submission, the target argument will beOptional.empty()
. This method will be called beforeForm.onSubmit()
.- Parameters:
target
- ajax target if this linked was invoked using ajax,Optional.empty()
otherwise
-
onAfterSubmit
protected void onAfterSubmit(Optional<AjaxRequestTarget> target)
Callback for the onClick event. If ajax failed and this event was generated via a normal submission, the target argument will be null. This method will be called afterForm.onSubmit()
.- Parameters:
target
- ajax target if this linked was invoked using ajax, null otherwise
-
isButtonEnabled
protected final boolean isButtonEnabled()
Helper methods that both checks whether the link is enabled and whether the action ENABLE is allowed.- Returns:
- whether the link should be rendered as enabled
-
onComponentTag
protected void onComponentTag(ComponentTag tag)
Description copied from class:Button
Processes the component tag. A value attribute is added with the value of the model object, if available.NOTE. For a <button> the value attribute is not rendered, markup needs to be added within the button to display the button's label.
- Overrides:
onComponentTag
in classButton
- Parameters:
tag
- Tag to modify- See Also:
Component.onComponentTag(ComponentTag)
-
-