org.apache.struts2.dispatcher.multipart

## Class JakartaMultiPartRequest

- java.lang.Object
- - org.apache.struts2.dispatcher.multipart.AbstractMultiPartRequest
  - - org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest

- All Implemented Interfaces:
    MultiPartRequest

      public class JakartaMultiPartRequest
      extends AbstractMultiPartRequest

  Multipart form data request adapter for Jakarta Commons Fileupload package.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected List<org.apache.commons.fileupload.FileItem>` | `allFileItems`
    `protected Map<String,List<org.apache.commons.fileupload.FileItem>>` | `files`
    `protected Map<String,List<String>>` | `params`

    - ### Fields inherited from class org.apache.struts2.dispatcher.multipart.AbstractMultiPartRequest

      `BUFFER_SIZE, bufferSize, defaultEncoding, defaultLocale, errors, maxFiles, maxFileSize, maxSize, maxStringLength`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JakartaMultiPartRequest()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `cleanUp()` Cleans up all uploaded file, should be called at the end of request
    `protected org.apache.commons.fileupload.disk.DiskFileItemFactory` | `createDiskFileItemFactory(String saveDir)`
    `protected org.apache.commons.fileupload.RequestContext` | `createRequestContext(javax.servlet.http.HttpServletRequest req)` Creates a RequestContext needed by Jakarta Commons Upload.
    `protected org.apache.commons.fileupload.servlet.ServletFileUpload` | `createServletFileUpload(org.apache.commons.fileupload.disk.DiskFileItemFactory fac)`
    `String[]` | `getContentType(String fieldName)` Returns the content type(s) of the file(s) associated with the specified field name (as supplied by the client browser), or `null` if no files are associated with the given field name.
    `UploadedFile[]` | `getFile(String fieldName)` Returns a `UploadedFile` object for the filename specified or `null` if no files are associated with the given field name.
    `String[]` | `getFileNames(String fieldName)` Returns a String[] of file names for files associated with the specified input field name
    `Enumeration<String>` | `getFileParameterNames()` Returns an enumeration of the parameter names for uploaded files
    `String[]` | `getFilesystemName(String fieldName)` Returns the file system name(s) of files associated with the given field name or `null` if no files are associated with the given field name.
    `String` | `getParameter(String name)` Returns the specified request parameter.
    `Enumeration<String>` | `getParameterNames()` Returns an enumeration of String parameter names.
    `String[]` | `getParameterValues(String name)` Returns a list of all parameter values associated with a parameter name.
    `void` | `parse(javax.servlet.http.HttpServletRequest request, String saveDir)` Creates a new request wrapper to handle multi-part data using methods adapted from Jason Pell's multipart classes (see class description).
    `protected List<org.apache.commons.fileupload.FileItem>` | `parseRequest(javax.servlet.http.HttpServletRequest servletRequest, String saveDir)`
    `protected void` | `processFileField(org.apache.commons.fileupload.FileItem item)`
    `protected void` | `processNormalFormField(org.apache.commons.fileupload.FileItem item, String charset)`
    `protected void` | `processUpload(javax.servlet.http.HttpServletRequest request, String saveDir)`

    - ### Methods inherited from class org.apache.struts2.dispatcher.multipart.AbstractMultiPartRequest

      `buildErrorMessage, getCanonicalName, getErrors, setBufferSize, setDefaultEncoding, setLocale, setLocaleProviderFactory, setMaxFiles, setMaxFileSize, setMaxSize, setMaxStringLength`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### files

          protected Map<String,List<org.apache.commons.fileupload.FileItem>> files

    - #### params

          protected Map<String,List<String>> params

    - #### allFileItems

          protected List<org.apache.commons.fileupload.FileItem> allFileItems

  - ### Constructor Detail

    - #### JakartaMultiPartRequest

          public JakartaMultiPartRequest()

  - ### Method Detail

    - #### parse

          public void parse(javax.servlet.http.HttpServletRequest request,
                            String saveDir)
                     throws IOException

      Creates a new request wrapper to handle multi-part data using methods adapted from Jason Pell's multipart classes (see class description).
      Parameters:
        `saveDir` - the directory to save off the file
        `request` - the request containing the multipart
      Throws:
        `IOException` - is thrown if encoding fails.

    - #### processUpload

          protected void processUpload(javax.servlet.http.HttpServletRequest request,
                                       String saveDir)
                                throws org.apache.commons.fileupload.FileUploadException,
                                       UnsupportedEncodingException

      Throws:
        `org.apache.commons.fileupload.FileUploadException`
        `UnsupportedEncodingException`

    - #### processFileField

          protected void processFileField(org.apache.commons.fileupload.FileItem item)

    - #### processNormalFormField

          protected void processNormalFormField(org.apache.commons.fileupload.FileItem item,
                                                String charset)
                                         throws UnsupportedEncodingException

      Throws:
        `UnsupportedEncodingException`

    - #### parseRequest

          protected List<org.apache.commons.fileupload.FileItem> parseRequest(javax.servlet.http.HttpServletRequest servletRequest,
                                                                              String saveDir)
                                                                       throws org.apache.commons.fileupload.FileUploadException

      Throws:
        `org.apache.commons.fileupload.FileUploadException`

    - #### createServletFileUpload

          protected org.apache.commons.fileupload.servlet.ServletFileUpload createServletFileUpload(org.apache.commons.fileupload.disk.DiskFileItemFactory fac)

    - #### createDiskFileItemFactory

          protected org.apache.commons.fileupload.disk.DiskFileItemFactory createDiskFileItemFactory(String saveDir)

    - #### getFileParameterNames

          public Enumeration<String> getFileParameterNames()

      Description copied from interface: `MultiPartRequest`
      Returns an enumeration of the parameter names for uploaded files
      Returns:
        an enumeration of the parameter names for uploaded files

    - #### getContentType

          public String[] getContentType(String fieldName)

      Description copied from interface: `MultiPartRequest`
      Returns the content type(s) of the file(s) associated with the specified field name (as supplied by the client browser), or `null` if no files are associated with the given field name.
      Parameters:
        `fieldName` - input field name
      Returns:
        an array of content encoding for the specified input field name or `null` if no content type was specified.

    - #### getFile

          public UploadedFile[] getFile(String fieldName)

      Description copied from interface: `MultiPartRequest`
      Returns a `UploadedFile` object for the filename specified or `null` if no files are associated with the given field name.
      Parameters:
        `fieldName` - input field name
      Returns:
        a UploadedFile[] object for files associated with the specified input field name

    - #### getFileNames

          public String[] getFileNames(String fieldName)

      Description copied from interface: `MultiPartRequest`
      Returns a String[] of file names for files associated with the specified input field name
      Parameters:
        `fieldName` - input field name
      Returns:
        a String[] of file names for files associated with the specified input field name

    - #### getFilesystemName

          public String[] getFilesystemName(String fieldName)

      Description copied from interface: `MultiPartRequest`
      Returns the file system name(s) of files associated with the given field name or `null` if no files are associated with the given field name.
      Parameters:
        `fieldName` - input field name
      Returns:
        the file system name(s) of files associated with the given field name

    - #### getParameter

          public String getParameter(String name)

      Description copied from interface: `MultiPartRequest`
      Returns the specified request parameter.
      Parameters:
        `name` - the name of the parameter to get
      Returns:
        the parameter or `null` if it was not found.

    - #### getParameterNames

          public Enumeration<String> getParameterNames()

      Description copied from interface: `MultiPartRequest`
      Returns an enumeration of String parameter names.
      Returns:
        an enumeration of String parameter names.

    - #### getParameterValues

          public String[] getParameterValues(String name)

      Description copied from interface: `MultiPartRequest`
      Returns a list of all parameter values associated with a parameter name. If there is only one parameter value per name the resulting array will be of length 1.
      Parameters:
        `name` - the name of the parameter.
      Returns:
        an array of all values associated with the parameter name.

    - #### createRequestContext

          protected org.apache.commons.fileupload.RequestContext createRequestContext(javax.servlet.http.HttpServletRequest req)

      Creates a RequestContext needed by Jakarta Commons Upload.
      Parameters:
        `req` - the request.
      Returns:
        a new request context.

    - #### cleanUp

          public void cleanUp()

      Description copied from interface: `MultiPartRequest`
      Cleans up all uploaded file, should be called at the end of request

Copyright © 2000–2026 Apache Software Foundation. All rights reserved.