Para tu pregunta 1, veamos lo que dice la documentación de Struts 2.
Cita:
Iniciado por Apache Struts 2 Documentation All uploaded files are saved to a temporary directory by the framework before being passed in to an Action. Depending on the allowed file sizes it may be necessary to have the framework store these temporary files in an alternate location. To do this
change struts.multipart.saveDir to the directory where the uploaded files will be placed. If this property is not set it defaults to javax.servlet.context.tempdir. Keep in mind that on some operating systems, like Solaris, /tmp is memory based and files stored in that directory would consume an amount of RAM approximately equal to the size of the uploaded file.
Seguir leyendo... Tu pregunta 2 no la entiendo...