Class ServletFileUpload
java.lang.Object
org.apache.tomcat.util.http.fileupload.FileUploadBase
org.apache.tomcat.util.http.fileupload.FileUpload
org.apache.tomcat.util.http.fileupload.servlet.ServletFileUpload
High level API for processing file uploads.
This class handles multiple files per single HTML widget, sent using
multipart/mixed
encoding type, as specified by
RFC 1867. Use FileUploadBase.parseRequest(org.apache.tomcat.util.http.fileupload.RequestContext)
to
acquire a list of FileItem
s
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.
-
Field Summary
Fields inherited from class org.apache.tomcat.util.http.fileupload.FileUploadBase
ATTACHMENT, CONTENT_DISPOSITION, CONTENT_LENGTH, CONTENT_TYPE, FORM_DATA, MULTIPART, MULTIPART_FORM_DATA, MULTIPART_MIXED
-
Constructor Summary
ConstructorDescriptionConstructs an uninitialized instance of this class.ServletFileUpload
(FileItemFactory fileItemFactory) Constructs an instance of this class which uses the supplied factory to createFileItem
instances. -
Method Summary
Modifier and TypeMethodDescriptiongetItemIterator
(HttpServletRequest request) Processes an RFC 1867 compliantmultipart/form-data
stream.static final boolean
isMultipartContent
(HttpServletRequest request) Utility method that determines whether the request contains multipart content.parseParameterMap
(HttpServletRequest request) Processes an RFC 1867 compliantmultipart/form-data
stream.Methods inherited from class org.apache.tomcat.util.http.fileupload.FileUpload
getFileItemFactory, setFileItemFactory
Methods inherited from class org.apache.tomcat.util.http.fileupload.FileUploadBase
getBoundary, getFieldName, getFileCountMax, getFileName, getFileSizeMax, getHeaderEncoding, getItemIterator, getParsedHeaders, getProgressListener, getSizeMax, isMultipartContent, newFileItemHeaders, parseParameterMap, parseRequest, setFileCountMax, setFileSizeMax, setHeaderEncoding, setProgressListener, setSizeMax
-
Constructor Details
-
ServletFileUpload
public ServletFileUpload()Constructs an uninitialized instance of this class. A factory must be configured, usingsetFileItemFactory()
, before attempting to parse requests.- See Also:
-
ServletFileUpload
Constructs an instance of this class which uses the supplied factory to createFileItem
instances.- Parameters:
fileItemFactory
- The factory to use for creating file items.- See Also:
-
-
Method Details
-
isMultipartContent
Utility method that determines whether the request contains multipart content.- Parameters:
request
- The servlet request to be evaluated. Must be non-null.- Returns:
true
if the request is multipart;false
otherwise.
-
parseParameterMap
public Map<String,List<FileItem>> parseParameterMap(HttpServletRequest request) throws FileUploadException Processes an RFC 1867 compliantmultipart/form-data
stream.- Parameters:
request
- The servlet request to be parsed.- Returns:
- A map of
FileItem
instances parsed from the request. - Throws:
FileUploadException
- if there are problems reading/parsing the request or storing files.- Since:
- 1.3
-
getItemIterator
public FileItemIterator getItemIterator(HttpServletRequest request) throws FileUploadException, IOException Processes an RFC 1867 compliantmultipart/form-data
stream.- Parameters:
request
- The servlet request to be parsed.- Returns:
- An iterator to instances of
FileItemStream
parsed from the request, in the order that they were transmitted. - Throws:
FileUploadException
- if there are problems reading/parsing the request or storing files.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.
-