Class ServletFileUpload
- java.lang.Object
-
- org.apache.commons.fileupload.FileUploadBase
-
- org.apache.commons.fileupload.FileUpload
-
- org.apache.commons.fileupload.servlet.ServletFileUpload
-
public class ServletFileUpload extends FileUpload
High level API for processing file uploads.
This class handles multiple files per single HTML widget, sent using
multipart/mixedencoding type, as specified by RFC 1867. UseparseRequest(HttpServletRequest)to acquire a list ofFileItems associated with a given HTML widget.How the data for individual parts is stored is determined by the factory used to create them; a given part may be in memory, on disk, or somewhere else.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.commons.fileupload.FileUploadBase
FileUploadBase.FileSizeLimitExceededException, FileUploadBase.FileUploadIOException, FileUploadBase.InvalidContentTypeException, FileUploadBase.IOFileUploadException, FileUploadBase.SizeException, FileUploadBase.SizeLimitExceededException, FileUploadBase.UnknownSizeException
-
-
Field Summary
-
Fields inherited from class org.apache.commons.fileupload.FileUploadBase
ATTACHMENT, CONTENT_DISPOSITION, CONTENT_LENGTH, CONTENT_TYPE, DEFAULT_PART_HEADER_SIZE_MAX, FORM_DATA, MAX_HEADER_SIZE, MULTIPART, MULTIPART_FORM_DATA, MULTIPART_MIXED, MULTIPART_RELATED
-
-
Constructor Summary
Constructors Constructor Description ServletFileUpload()Constructs an uninitialized instance of this class.ServletFileUpload(FileItemFactory fileItemFactory)Constructs an instance of this class which uses the supplied factory to createFileIteminstances.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description FileItemIteratorgetItemIterator(javax.servlet.http.HttpServletRequest request)Processes an RFC 1867 compliantmultipart/form-datastream.static booleanisMultipartContent(javax.servlet.http.HttpServletRequest request)Utility method that determines whether the request contains multipart content.java.util.Map<java.lang.String,java.util.List<FileItem>>parseParameterMap(javax.servlet.http.HttpServletRequest request)Processes an RFC 1867 compliantmultipart/form-datastream.java.util.List<FileItem>parseRequest(javax.servlet.http.HttpServletRequest request)Processes an RFC 1867 compliantmultipart/form-datastream.-
Methods inherited from class org.apache.commons.fileupload.FileUpload
getFileItemFactory, setFileItemFactory
-
Methods inherited from class org.apache.commons.fileupload.FileUploadBase
createItem, getBoundary, getFieldName, getFieldName, getFileCountMax, getFileName, getFileName, getFileSizeMax, getHeader, getHeaderEncoding, getItemIterator, getParsedHeaders, getPartHeaderSizeMax, getProgressListener, getSizeMax, isMultipartContent, newFileItemHeaders, parseHeaders, parseParameterMap, parseRequest, setFileCountMax, setFileSizeMax, setHeaderEncoding, setPartHeaderSizeMax, setProgressListener, setSizeMax
-
-
-
-
Constructor Detail
-
ServletFileUpload
public ServletFileUpload()
Constructs an uninitialized instance of this class. A factory must be configured, usingsetFileItemFactory(), before attempting to parse requests.- See Also:
FileUpload(FileItemFactory)
-
ServletFileUpload
public ServletFileUpload(FileItemFactory fileItemFactory)
Constructs an instance of this class which uses the supplied factory to createFileIteminstances.- Parameters:
fileItemFactory- The factory to use for creating file items.- See Also:
FileUpload()
-
-
Method Detail
-
isMultipartContent
public static final boolean isMultipartContent(javax.servlet.http.HttpServletRequest request)
Utility method that determines whether the request contains multipart content.- Parameters:
request- The servlet request to be evaluated. Must be non-null.- Returns:
trueif the request is multipart;falseotherwise.
-
getItemIterator
public FileItemIterator getItemIterator(javax.servlet.http.HttpServletRequest request) throws FileUploadException, java.io.IOException
Processes an RFC 1867 compliantmultipart/form-datastream.- Parameters:
request- The servlet request to be parsed.- Returns:
- An iterator to instances of
FileItemStreamparsed from the request, in the order that they were transmitted. - Throws:
FileUploadException- if there are problems reading/parsing the request or storing files.java.io.IOException- An I/O error occurred. This may be a network error while communicating with the client or a problem while storing the uploaded content.
-
parseParameterMap
public java.util.Map<java.lang.String,java.util.List<FileItem>> parseParameterMap(javax.servlet.http.HttpServletRequest request) throws FileUploadException
Processes an RFC 1867 compliantmultipart/form-datastream.- Parameters:
request- The servlet request to be parsed.- Returns:
- A map of
FileIteminstances parsed from the request. - Throws:
FileUploadException- if there are problems reading/parsing the request or storing files.- Since:
- 1.3
-
parseRequest
public java.util.List<FileItem> parseRequest(javax.servlet.http.HttpServletRequest request) throws FileUploadException
Processes an RFC 1867 compliantmultipart/form-datastream.- Overrides:
parseRequestin classFileUploadBase- Parameters:
request- The servlet request to be parsed.- Returns:
- A list of
FileIteminstances parsed from the request, in the order that they were transmitted. - Throws:
FileUploadException- if there are problems reading/parsing the request or storing files.
-
-