Class PortletFileUpload
- java.lang.Object
-
- org.apache.commons.fileupload.FileUploadBase
-
- org.apache.commons.fileupload.FileUpload
-
- org.apache.commons.fileupload.portlet.PortletFileUpload
-
public class PortletFileUpload extends FileUpload
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#parseRequest(javax.servlet.http.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.
- Since:
- FileUpload 1.1
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.commons.fileupload.FileUploadBase
FileUploadBase.FileSizeLimitExceededException, FileUploadBase.FileUploadIOException, FileUploadBase.InvalidContentTypeException, FileUploadBase.IOFileUploadException, FileUploadBase.SizeLimitExceededException, FileUploadBase.UnknownSizeException
-
-
Field Summary
-
Fields inherited from class org.apache.commons.fileupload.FileUploadBase
ATTACHMENT, CONTENT_DISPOSITION, CONTENT_LENGTH, CONTENT_TYPE, FORM_DATA, MAX_HEADER_SIZE, MULTIPART, MULTIPART_FORM_DATA, MULTIPART_MIXED
-
-
Constructor Summary
Constructors Constructor Description PortletFileUpload()
Constructs an uninitialised instance of this class.PortletFileUpload(FileItemFactory fileItemFactory)
Constructs an instance of this class which uses the supplied factory to createFileItem
instances.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description FileItemIterator
getItemIterator(javax.portlet.ActionRequest request)
Processes an RFC 1867 compliantmultipart/form-data
stream.static boolean
isMultipartContent(javax.portlet.ActionRequest request)
Utility method that determines whether the request contains multipart content.java.util.Map<java.lang.String,java.util.List<FileItem>>
parseParameterMap(javax.portlet.ActionRequest request)
Processes an RFC 1867 compliantmultipart/form-data
stream.java.util.List<FileItem>
parseRequest(javax.portlet.ActionRequest request)
Processes an RFC 1867 compliantmultipart/form-data
stream.-
Methods inherited from class org.apache.commons.fileupload.FileUpload
getFileItemFactory, setFileItemFactory
-
Methods inherited from class org.apache.commons.fileupload.FileUploadBase
getFileSizeMax, getHeaderEncoding, getItemIterator, getProgressListener, getSizeMax, isMultipartContent, isMultipartContent, parseParameterMap, parseRequest, parseRequest, setFileSizeMax, setHeaderEncoding, setProgressListener, setSizeMax
-
-
-
-
Constructor Detail
-
PortletFileUpload
public PortletFileUpload()
Constructs an uninitialised instance of this class. A factory must be configured, usingsetFileItemFactory()
, before attempting to parse requests.- See Also:
FileUpload(FileItemFactory)
-
PortletFileUpload
public PortletFileUpload(FileItemFactory fileItemFactory)
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:
FileUpload()
-
-
Method Detail
-
isMultipartContent
public static final boolean isMultipartContent(javax.portlet.ActionRequest request)
Utility method that determines whether the request contains multipart content.- Parameters:
request
- The portlet request to be evaluated. Must be non-null.- Returns:
true
if the request is multipart;false
otherwise.
-
parseRequest
public java.util.List<FileItem> parseRequest(javax.portlet.ActionRequest request) throws FileUploadException
Processes an RFC 1867 compliantmultipart/form-data
stream.- Parameters:
request
- The portlet request to be parsed.- Returns:
- A list of
FileItem
instances parsed from the request, in the order that they were transmitted. - Throws:
FileUploadException
- if there are problems reading/parsing the request or storing files.
-
parseParameterMap
public java.util.Map<java.lang.String,java.util.List<FileItem>> parseParameterMap(javax.portlet.ActionRequest request) throws FileUploadException
Processes an RFC 1867 compliantmultipart/form-data
stream.- Parameters:
request
- The portlet 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(javax.portlet.ActionRequest request) throws FileUploadException, java.io.IOException
Processes an RFC 1867 compliantmultipart/form-data
stream.- Parameters:
request
- The portlet 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.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.
-
-