===== BEGIN SPEC ADDITION TO: javadocs/javax/faces/context/ExternalContext.html#getRequestParameterMap()
If the postback of the form is of enctype="multipart/form-data" then this method is responsible for saving any file(s) that may be present in the request. The files are saved on the server beneath a directory specified by the "javax.faces.UPLOADED_FILES_DIR" context initialization parameter. If the parameter is not present, then the "java.io.tmpdir" system property is consulted. After all of the files are saved, this method sets a request attribute named "javax.faces.UPLOADED_FILES" whose value is an immutable java.util.Map<String, java.io.File>. The map key is the request parameter name (clientId) and the map value shall be the uploaded java.io.File. It is the responsibility of the application developer to delete the files from the filesystem when they are no longer needed.
Servlet: In order to guarantee that multiple users can upload files with the same filename, the files shall be saved in a sub-folder whose name is the value of HttpSession.getId().
Portlet: In order to guarantee that multiple users can upload files with the same filename, the files shall be saved in a sub-folder whose name is the value of PortletSession.getId()
===== END SPEC ADDITION =====
Neil