I have a form built with FormPanel and three FileUpload objects. The three FileUpload objects refer to different types of binary files.
I've tested quite a bit, and the files have always been placed in the list in the order that I've added them (from top to bottom) in the three FileUpload objects.
So, for example, in the form below the files 1, 2 and 3 arrive at the server in that order (I've ran it with various files 20 or 30 times):
Is that guaranteed? or should I find a way to label them somehow?

When using the FileItemIterator you can check each item on the form. As far as I'm aware of they do come in order they are in the HTML.
The iterator will let you know if it is a form field or an upload file as shown in an old function I wrote.
On handling a file upload, use getFieldName() to identify the form field and getName() to handle the filename from the client.
The difficulty is assigning the servlet in the parameters in the web.xml file.
Hopefully the following code will help you figure it out.
web.xml
I know the servlet settings work but I'm still unsure about the context params and if they actually make a difference.