Update: The problem ended up being the Flash component itself. It wasn't properly compiling the multiple values from the element. I notified the developers and they implemented a workaround. Commons FileUpload does support multiple values per the accepted answer.
I have a form, enctype="multipart/form-data", with one
<select name="XX" multiple="multiple">
and a Flash upload component which allows the user to select multiple files. When handling the POST using Apache Commons FileUpload, I detect the select field via
item.isFormField() == true
and continue to extract the details via
// Process a regular form field
if (item.isFormField()) {
String name = item.getFieldName();
String value = item.getString();
}
The problem I'm having is that item.getString(); returns only the first selected value from the select field; no matter how many items I pick, I only get the first item.
Likewise, when I use the standard servlet method for parameter extraction, ie.
final String[] values = request.getParameterValues("XX");
values is empty, which I assume is because the form is encoded multipart.
How can I retrieve these multiple selected values from my multi-select field?
This (unanswered) question has also been posed on the Sun forums by another author.