org.apache.struts2.dispatcher.multipart
Class JakartaMultiPartRequest

java.lang.Object
  extended by org.apache.struts2.dispatcher.multipart.JakartaMultiPartRequest
All Implemented Interfaces:
MultiPartRequest

public class JakartaMultiPartRequest
extends Object
implements MultiPartRequest

Multipart form data request adapter for Jakarta Commons Fileupload package.


Field Summary
private  List<String> errors
           
private  Map<String,List<org.apache.commons.fileupload.FileItem>> files
           
(package private) static Logger LOG
           
private  long maxSize
           
private  Map<String,List<String>> params
           
 
Constructor Summary
JakartaMultiPartRequest()
           
 
Method Summary
private  org.apache.commons.fileupload.RequestContext createRequestContext(HttpServletRequest req)
          Creates a RequestContext needed by Jakarta Commons Upload.
private  String getCanonicalName(String filename)
          Returns the canonical name of the given file.
 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.
 List getErrors()
          Returns a list of error messages that may have occurred while processing the request.
 File[] getFile(String fieldName)
          Returns a File 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(HttpServletRequest servletRequest, String saveDir)
          Creates a new request wrapper to handle multi-part data using methods adapted from Jason Pell's multipart classes (see class description).
 void setMaxSize(String maxSize)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

static final Logger LOG

files

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

params

private Map<String,List<String>> params

errors

private List<String> errors

maxSize

private long maxSize
Constructor Detail

JakartaMultiPartRequest

public JakartaMultiPartRequest()
Method Detail

setMaxSize

public void setMaxSize(String maxSize)

parse

public void parse(HttpServletRequest servletRequest,
                  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).

Specified by:
parse in interface MultiPartRequest
Parameters:
saveDir - the directory to save off the file
servletRequest - the request containing the multipart
Throws:
IOException - is thrown if encoding fails.

getFileParameterNames

public Enumeration<String> getFileParameterNames()
Description copied from interface: MultiPartRequest
Returns an enumeration of the parameter names for uploaded files

Specified by:
getFileParameterNames in interface MultiPartRequest
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.

Specified by:
getContentType in interface MultiPartRequest
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 File[] getFile(String fieldName)
Description copied from interface: MultiPartRequest
Returns a File object for the filename specified or null if no files are associated with the given field name.

Specified by:
getFile in interface MultiPartRequest
Parameters:
fieldName - input field name
Returns:
a File[] 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

Specified by:
getFileNames in interface MultiPartRequest
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.

Specified by:
getFilesystemName in interface MultiPartRequest
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.

Specified by:
getParameter in interface MultiPartRequest
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.

Specified by:
getParameterNames in interface MultiPartRequest
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.

Specified by:
getParameterValues in interface MultiPartRequest
Parameters:
name - the name of the parameter.
Returns:
an array of all values associated with the parameter name.

getErrors

public List getErrors()
Description copied from interface: MultiPartRequest
Returns a list of error messages that may have occurred while processing the request. If there are no errors, an empty list is returned. If the underlying implementation (ie: pell, cos, jakarta, etc) cannot support providing these errors, an empty list is also returned. This list of errors is repoted back to the MultiPartRequestWrapper's errors field.

Specified by:
getErrors in interface MultiPartRequest
Returns:
a list of Strings that represent various errors during parsing

getCanonicalName

private String getCanonicalName(String filename)
Returns the canonical name of the given file.

Parameters:
filename - the given file
Returns:
the canonical name of the given file

createRequestContext

private org.apache.commons.fileupload.RequestContext createRequestContext(HttpServletRequest req)
Creates a RequestContext needed by Jakarta Commons Upload.

Parameters:
req - the request.
Returns:
a new request context.


Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.