org.apache.wicket.markup.html.form
Class AbstractTextComponent<T>

java.lang.Object
  extended by org.apache.wicket.Component
      extended by org.apache.wicket.MarkupContainer
          extended by org.apache.wicket.markup.html.WebMarkupContainer
              extended by org.apache.wicket.markup.html.form.LabeledWebMarkupContainer
                  extended by org.apache.wicket.markup.html.form.FormComponent<T>
                      extended by org.apache.wicket.markup.html.form.AbstractTextComponent<T>
Type Parameters:
T - The model object type
All Implemented Interfaces:
Serializable, IClusterable, IConverterLocator, IFormModelUpdateListener, IFormVisitorParticipant, ILabelProvider<String>
Direct Known Subclasses:
TextArea, TextField

public abstract class AbstractTextComponent<T>
extends FormComponent<T>

Abstract base class for TextArea and TextField.

Author:
Jonathan Locke
See Also:
Serialized Form

Nested Class Summary
static interface AbstractTextComponent.ITextFormatProvider
          Text components that implement this interface are know to be able to provide a pattern for formatting output and parsing input.
 
Nested classes/interfaces inherited from class org.apache.wicket.markup.html.form.FormComponent
FormComponent.AbstractVisitor, FormComponent.IVisitor
 
Nested classes/interfaces inherited from class org.apache.wicket.Component
Component.ComponentModelChange, Component.EnabledChange, Component.VisibilityChange
 
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_CONFIGURED, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER
 
Constructor Summary
AbstractTextComponent(String id)
           
AbstractTextComponent(String id, IModel<T> model)
           
 
Method Summary
protected  void convertInput()
          Converts and validates the conversion of the raw input string into the object specified by FormComponent.getType() and records any errors.
protected  T convertValue(String[] value)
          Subclasses should overwrite this if the conversion is not done through the type field and the IConverter.
 boolean getConvertEmptyInputStringToNull()
          Should the bound object become null when the input is empty?
 boolean isInputNullable()
          TextFields return an empty string even if the user didn't type anything in them.
protected  void onBeforeRender()
          If the type is not set try to guess it if the model supports it.
 FormComponent<T> setConvertEmptyInputStringToNull(boolean flag)
          Should the bound object become null when the input is empty?
protected  boolean supportsPersistence()
           
 
Methods inherited from class org.apache.wicket.markup.html.form.FormComponent
add, add, checkRequired, clearInput, error, getConvertedInput, getDefaultLabel, getDefaultLabel, getForm, getInput, getInputAsArray, getInputName, getModel, getModelObject, getModelValue, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isMultiPart, isPersistent, isRequired, isValid, newValidatable, onComponentTag, onDetach, onDisabled, onInvalid, onValid, processChildren, processInput, setConvertedInput, setLabel, setModel, setModelObject, setModelValue, setModelValue, setPersistent, setRequired, setType, shouldTrimInput, trim, updateModel, valid, validate, validateRequired, validateValidators, visitComponentsPostOrder, visitFormComponentsPostOrder
 
Methods inherited from class org.apache.wicket.markup.html.form.LabeledWebMarkupContainer
getLabel, setLabelInternal
 
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getMarkupType, getWebPage, getWebRequest
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, autoAdd, contains, findMarkupStream, get, get, getAssociatedMarkupStream, getMarkupStream, hasAssociatedMarkup, internalAdd, isTransparentResolver, iterator, iterator, newMarkupResourceStream, onAfterRenderChildren, onComponentTagBody, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, renderNext, replace, setDefaultModel, setMarkupStream, size, swap, toString, toString, visitChildren, visitChildren
 
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, callOnBeforeRenderIfNotVisible, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, configure, continueToOriginalDestination, debug, detach, detachBehaviors, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviors, getBehaviors, getBehaviorsRawList, getClassRelativePath, getComponentBorder, getConverter, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdImpl, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalAttach, internalDetach, internalOnAttach, internalOnDetach, isActionAuthorized, isAncestorOf, isAttached, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markAttached, markRendering, modelChanged, modelChanging, onAfterRender, onAttach, onBeginRequest, onConfigure, onEndRequest, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, prepareForRender, redirectToInterceptPage, remove, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderHead, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, setAuto, setComponentBorder, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setRedirect, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, urlFor, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn, wrap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractTextComponent

public AbstractTextComponent(String id)
See Also:
Component.Component(String)

AbstractTextComponent

public AbstractTextComponent(String id,
                             IModel<T> model)
Parameters:
id -
model -
See Also:
Component.Component(String, IModel)
Method Detail

getConvertEmptyInputStringToNull

public final boolean getConvertEmptyInputStringToNull()
Should the bound object become null when the input is empty?

Returns:
true when the value will be set to null when the input is empty.

isInputNullable

public boolean isInputNullable()
TextFields return an empty string even if the user didn't type anything in them. To be able to work nicely with validation, this method returns false.

Overrides:
isInputNullable in class FormComponent<T>
Returns:
True if this component's input can be null. Returns true by default.
See Also:
FormComponent.isInputNullable()

convertInput

protected void convertInput()
Description copied from class: FormComponent
Converts and validates the conversion of the raw input string into the object specified by FormComponent.getType() and records any errors. Converted value is available through FormComponent.getConvertedInput().

Usually the user should do custom conversions by specifying an IConverter by registering it with the application by overriding Application.getConverterLocator(), or at the component level by overriding Component.getConverter().

Overrides:
convertInput in class FormComponent<T>
See Also:
FormComponent.convertInput()

onBeforeRender

protected void onBeforeRender()
If the type is not set try to guess it if the model supports it.

Overrides:
onBeforeRender in class Component
See Also:
Component.onBeforeRender()

setConvertEmptyInputStringToNull

public final FormComponent<T> setConvertEmptyInputStringToNull(boolean flag)
Should the bound object become null when the input is empty?

Parameters:
flag - the value to set this flag.
Returns:
this

convertValue

protected T convertValue(String[] value)
                  throws ConversionException
Description copied from class: FormComponent
Subclasses should overwrite this if the conversion is not done through the type field and the IConverter. WARNING: this method may be removed in future versions. If conversion fails then a ConversionException should be thrown

Overrides:
convertValue in class FormComponent<T>
Parameters:
value - The value can be the getInput() or through a cookie
Returns:
The converted value. default returns just the given value
Throws:
ConversionException - If input can't be converted
See Also:
FormComponent.convertValue(String[])

supportsPersistence

protected boolean supportsPersistence()
Overrides:
supportsPersistence in class FormComponent<T>
Returns:
True if this type of FormComponent can be persisted.
See Also:
FormComponent.supportsPersistence()


Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.