Class JakartaServletFileUpload<I extends org.apache.commons.fileupload2.core.FileItem<I>,​F extends org.apache.commons.fileupload2.core.FileItemFactory<I>>

  • Type Parameters:
    I - The FileItem type.
    F - the FileItemFactory type.
    Direct Known Subclasses:
    JakartaServletDiskFileUpload

    public class JakartaServletFileUpload<I extends org.apache.commons.fileupload2.core.FileItem<I>,​F extends org.apache.commons.fileupload2.core.FileItemFactory<I>>
    extends org.apache.commons.fileupload2.core.AbstractFileUpload<jakarta.servlet.http.HttpServletRequest,​I,​F>
    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(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.

    • Field Summary

      • Fields inherited from class org.apache.commons.fileupload2.core.AbstractFileUpload

        ATTACHMENT, CONTENT_DISPOSITION, CONTENT_LENGTH, CONTENT_TYPE, FORM_DATA, MULTIPART, MULTIPART_FORM_DATA, MULTIPART_MIXED
    • Constructor Summary

      Constructors 
      Constructor Description
      JakartaServletFileUpload()
      Constructs an uninitialized instance of this class.
      JakartaServletFileUpload​(F fileItemFactory)
      Constructs an instance of this class which uses the supplied factory to create FileItem instances.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.commons.fileupload2.core.FileItemInputIterator getItemIterator​(jakarta.servlet.http.HttpServletRequest request)
      Gets an RFC 1867 compliant multipart/form-data file item iterator.
      static boolean isMultipartContent​(jakarta.servlet.http.HttpServletRequest request)
      Tests whether the request contains multipart content.
      java.util.Map<java.lang.String,​java.util.List<I>> parseParameterMap​(jakarta.servlet.http.HttpServletRequest request)
      Parses an RFC 1867 compliant multipart/form-data stream.
      java.util.List<I> parseRequest​(jakarta.servlet.http.HttpServletRequest request)
      Parses an RFC 1867 compliant multipart/form-data stream.
      • Methods inherited from class org.apache.commons.fileupload2.core.AbstractFileUpload

        getBoundary, getFieldName, getFileCountMax, getFileItemFactory, getFileName, getFileSizeMax, getHeaderCharset, getItemIterator, getParsedHeaders, getProgressListener, getSizeMax, isMultipartContent, newFileItemHeaders, parseParameterMap, parseRequest, setFileCountMax, setFileItemFactory, setFileSizeMax, setHeaderCharset, setProgressListener, setSizeMax
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • JakartaServletFileUpload

        public JakartaServletFileUpload()
        Constructs an uninitialized instance of this class. A factory must be configured, using setFileItemFactory(), before attempting to parse requests.
        See Also:
        AbstractFileUpload()
      • JakartaServletFileUpload

        public JakartaServletFileUpload​(F 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:
        AbstractFileUpload()
    • Method Detail

      • isMultipartContent

        public static final boolean isMultipartContent​(jakarta.servlet.http.HttpServletRequest request)
        Tests 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.
      • getItemIterator

        public org.apache.commons.fileupload2.core.FileItemInputIterator getItemIterator​(jakarta.servlet.http.HttpServletRequest request)
                                                                                  throws org.apache.commons.fileupload2.core.FileUploadException,
                                                                                         java.io.IOException
        Gets an RFC 1867 compliant multipart/form-data file item iterator.
        Specified by:
        getItemIterator in class org.apache.commons.fileupload2.core.AbstractFileUpload<jakarta.servlet.http.HttpServletRequest,​I extends org.apache.commons.fileupload2.core.FileItem<I>,​F extends org.apache.commons.fileupload2.core.FileItemFactory<I>>
        Parameters:
        request - The servlet request to be parsed.
        Returns:
        An iterator to instances of FileItemInput parsed from the request, in the order that they were transmitted.
        Throws:
        org.apache.commons.fileupload2.core.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<I>> parseParameterMap​(jakarta.servlet.http.HttpServletRequest request)
                                                                                  throws org.apache.commons.fileupload2.core.FileUploadException
        Parses an RFC 1867 compliant multipart/form-data stream.
        Specified by:
        parseParameterMap in class org.apache.commons.fileupload2.core.AbstractFileUpload<jakarta.servlet.http.HttpServletRequest,​I extends org.apache.commons.fileupload2.core.FileItem<I>,​F extends org.apache.commons.fileupload2.core.FileItemFactory<I>>
        Parameters:
        request - The servlet request to be parsed.
        Returns:
        A map of FileItem instances parsed from the request.
        Throws:
        org.apache.commons.fileupload2.core.FileUploadException - if there are problems reading/parsing the request or storing files.
      • parseRequest

        public java.util.List<IparseRequest​(jakarta.servlet.http.HttpServletRequest request)
                                       throws org.apache.commons.fileupload2.core.FileUploadException
        Parses an RFC 1867 compliant multipart/form-data stream.
        Specified by:
        parseRequest in class org.apache.commons.fileupload2.core.AbstractFileUpload<jakarta.servlet.http.HttpServletRequest,​I extends org.apache.commons.fileupload2.core.FileItem<I>,​F extends org.apache.commons.fileupload2.core.FileItemFactory<I>>
        Parameters:
        request - The servlet request to be parsed.
        Returns:
        A list of FileItem instances parsed from the request, in the order that they were transmitted.
        Throws:
        org.apache.commons.fileupload2.core.FileUploadException - if there are problems reading/parsing the request or storing files.