更新:问题最终成为Flash组件本身.它没有正确地编译元素中的多个值.我通知开发人员他们实施了一种解决方法. Commons FileUpload确实支持每个接受的答案的多个值. 我有一个表单,enctype =“
我有一个表单,enctype =“multipart / form-data”,有一个
<select name="XX" multiple="multiple">
和Flash上传组件,允许用户选择多个文件.使用Apache Commons FileUpload处理POST时,我通过检测选择字段
item.isFormField() == true
并继续通过提取细节
// Process a regular form field if (item.isFormField()) { String name = item.getFieldName(); String value = item.getString(); }
我遇到的问题是item.getString();仅返回select字段中的第一个选定值;无论我挑选多少件物品,我都只得到第一件物品.
同样,当我使用标准servlet方法进行参数提取时,即.
final String[] values = request.getParameterValues("XX");
值为空,我假设是因为表单是多部分编码的.
如何从多选字段中检索这些多个选定值?
这个(未答复的)问题也是另一位作者的posed on the Sun forums.
实际上,有几个项可以具有相同的fieldName,您只需将同一fieldName的所有项字符串值添加到String的集合中,然后将该集合转换为数组.在那里找到一些信息:
http://www.nabble.com/RES:-File-Upload-td25910926.html