Spring MVC carga de archivos múltiples con la función de formulario de archivos múltiples HTML5

Estoy tratando de cargar varios archivos usando Spring 3.1.2 con @Controller y @RequestMapping.

Esto es lo que hice y mi configuración.

Formulario html5:

<form action="addFileSystemImage.foo" method="post" enctype="multipart/form-data">

    <input class='fileInput' type="file" name="files[]" multiple="multiple" />

    <input type="text" value="13asdf12eadsf" name="locId"/>

    <input type="submit" />

</form>

Método del controlador:

@RequestMapping(value="/publisher/addFileSystemImage.foo", method=RequestMethod.POST)
public @ResponseBody List<UploadedFile> addFileSystemImage(@RequestParam("files[]") ArrayList<MultipartFile> files, String locId, HttpServletRequest request) {

 //do lotsa voodoo rocket science here to process the files  

}

mi conf:

 <mvc:annotation-driven />
 <context:component-scan base-package="foo.package"></context:component-scan>
 <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"></bean>

El envío del formulario llega al método addFileSystemImage. Los datos para el argumento locId están aquí, pero el argumento "archivos" no está enlazado. Es sistemáticamente nulo, independientemente de la combinación de argumentos / nombres de campos / tipos de argumentos que he probado.

El argumento HttpServletRequest es un org.springframework.web.multipart.support.DefaultMultipartHttpServletRequest y posee un atributo multiPartFile que realmente contiene los datos del archivo. Mirando su valor en depuración me da

{files[]=[org.springframework.web.multipart.commons.CommonsMultipartFile@16afd7f9, org.springframework.web.multipart.commons.CommonsMultipartFile@728c2811, org.springframework.web.multipart.commons.CommonsMultipartFile@4f9aaed7]}

lo que significa que mis archivos [] están de hecho aquí ... pero de alguna manera no pasó el paso de enlace de datos correctamente ...

Ahora ... sé que me dirá que puedo recuperar los datos de la solicitud ... pero preferiría que esto funcione correctamente ... a la manera Sring ... :) y tener mi ArrayList de MultipartFile correctamente poblado.

Me estoy perdiendo de algo ? ¿Alguien realmente ha hecho este trabajo correctamente? ¿Qué puedo hacer para que se rellene esta ArrayList (o incluso una matriz normal)?

Me encontré con esta soluciónSpring MVC con carga de archivos ajax y MultipartFile que hace casi lo mismo que yo, pero obviamente debo estar haciendo algo mal ya que esta solución no funciona para mí.

Nota: Logré que funcionara con cargas de un solo archivo. Pero mi reto hoy es conseguir múltiples archivos a la vez.

Cualquier ayuda apreciada.

Gracias por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta