org.apache.wicket.markup.html.form.upload
Class FileUploadField

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
                      extended by org.apache.wicket.markup.html.form.upload.FileUploadField
All Implemented Interfaces:
java.io.Serializable, IClusterable, IConverterLocator, IFormVisitorParticipant, ILabelProvider

public class FileUploadField
extends FormComponent

Form component that corresponds to a <input type="file">. When a FileInput component is nested in a Form, that has multipart == true, its model is updated with the FileUpload for this component.

FILE UPLOADS ARE NOT SUPPORTED BY AJAX. USE GOOGLE TO LEARN MORE ABOUT THIS.

Author:
Eelco Hillenius
See Also:
Serialized Form

Nested Class Summary
 
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_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PATH_SEPARATOR, RENDER
 
Constructor Summary
FileUploadField(java.lang.String id)
           
FileUploadField(java.lang.String id, IModel model)
           
 
Method Summary
protected  boolean forceCloseStreamsOnDetach()
          The FileUploadField will close any input streams you have opened in its FileUpload by default.
 FileUpload getFileUpload()
           
 java.lang.String[] getInputAsArray()
          Gets the request parameters for this component as strings.
 boolean isMultiPart()
           
protected  void onComponentTag(ComponentTag tag)
          Processes the component tag.
protected  void onDetach()
          Clean up at the end of the request.
 Component setModel(IModel model)
          Sets the given model.
protected  boolean supportsPersistence()
          FileInputs cannot be persisted; returns false.
 void updateModel()
          Updates this components model from the request, it expects that the object is already converted through the convertInput() call that is called by the validate() method when a form is being processed.
 
Methods inherited from class org.apache.wicket.markup.html.form.FormComponent
add, checkRequired, clearInput, convertInput, convertValue, error, getBehaviors, getConvertedInput, getForm, getInput, getInputName, getModelValue, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isInputNullable, isPersistent, isRequired, isValid, onDisabled, onInvalid, onValid, processChildren, processInput, setConvertedInput, setLabel, setModelValue, setModelValue, setPersistent, setRequired, setType, shouldTrimInput, trim, valid, validate, validateRequired, validateValidators, 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
 
Methods inherited from class org.apache.wicket.MarkupContainer
add, addOrReplace, autoAdd, autoAdd, contains, findMarkupStream, get, getAssociatedMarkupStream, getMarkupStream, hasAssociatedMarkup, internalAdd, isTransparentResolver, iterator, iterator, newMarkupResourceStream, onComponentTagBody, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, replace, setMarkupStream, size, toString, toString, visitChildren, visitChildren
 
Methods inherited from class org.apache.wicket.Component
add, addStateChange, afterRender, beforeRender, callOnBeforeRenderIfNotVisible, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, continueToOriginalDestination, debug, detach, detachBehaviors, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getApplication, getBehaviors, getBehaviorsRawList, getClassRelativePath, getComponentBorder, getConverter, getConverter, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMarkupId, getMetaData, getModel, getModelComparator, getModelObject, getModelObjectAsString, getModelObjectAsString, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageFactory, 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, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markAttached, markRendering, modelChanged, modelChanging, newPage, newPage, onAfterRender, onAttach, onBeforeRender, onBeginRequest, onEndRequest, onModelChanged, onModelChanging, prepareForRender, redirectToInterceptPage, remove, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderHead, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, setAuto, setComponentBorder, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMarkupId, setMetaData, setModelObject, 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

FileUploadField

public FileUploadField(java.lang.String id)
See Also:
Component.Component(String)

FileUploadField

public FileUploadField(java.lang.String id,
                       IModel model)
Parameters:
id - See Component
model - See Component
Method Detail

getFileUpload

public FileUpload getFileUpload()
Returns:
The uploaded file

setModel

public Component setModel(IModel model)
Description copied from class: Component
Sets the given model.

WARNING: DO NOT OVERRIDE THIS METHOD UNLESS YOU HAVE A VERY GOOD REASON FOR IT. OVERRIDING THIS MIGHT OPEN UP SECURITY LEAKS AND BREAK BACK-BUTTON SUPPORT.

Overrides:
setModel in class MarkupContainer
Parameters:
model - The model
Returns:
This
See Also:
Component.setModel(org.apache.wicket.model.IModel)

updateModel

public void updateModel()
Description copied from class: FormComponent
Updates this components model from the request, it expects that the object is already converted through the convertInput() call that is called by the validate() method when a form is being processed. By default it just does this:
 setModelObject(getConvertedInput());
 
DO NOT CALL THIS METHOD DIRECTLY UNLESS YOU ARE SURE WHAT YOU ARE DOING. USUALLY UPDATING YOUR MODEL IS HANDLED BY THE FORM, NOT DIRECTLY BY YOU.

Overrides:
updateModel in class FormComponent
See Also:
FormComponent.updateModel()

getInputAsArray

public java.lang.String[] getInputAsArray()
Description copied from class: FormComponent
Gets the request parameters for this component as strings.

Overrides:
getInputAsArray in class FormComponent
Returns:
The values in the request for this component
See Also:
FormComponent.getInputAsArray()

isMultiPart

public boolean isMultiPart()
Overrides:
isMultiPart in class FormComponent
Returns:
True if this component encodes data in a multipart form submit
See Also:
FormComponent.isMultiPart()

onComponentTag

protected void onComponentTag(ComponentTag tag)
Description copied from class: FormComponent
Processes the component tag.

Overrides:
onComponentTag in class FormComponent
Parameters:
tag - Tag to modify
See Also:
Component.onComponentTag(org.apache.wicket.markup.ComponentTag)

supportsPersistence

protected boolean supportsPersistence()
FileInputs cannot be persisted; returns false.

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

onDetach

protected void onDetach()
Clean up at the end of the request. This means closing all inputstreams which might have been opened from the fileUpload.

Overrides:
onDetach in class FormComponent
See Also:
Component.onDetach()

forceCloseStreamsOnDetach

protected boolean forceCloseStreamsOnDetach()
The FileUploadField will close any input streams you have opened in its FileUpload by default. If you wish to manage the stream yourself (e.g. you want to use it in another thread) then you can override this method to prevent this behavior.

Returns:


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