Class 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 of FileItems 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
    • Constructor Detail

      • PortletFileUpload

        public PortletFileUpload()
        Constructs an uninitialised instance of this class. A factory must be configured, using setFileItemFactory(), 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 create FileItem 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 compliant multipart/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 compliant multipart/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 compliant multipart/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.