UploadedFile并获得多个文件上传?

时间:2013-12-12 11:55:01

标签: xpages

我创建了一个XPage,调用了beforePageLoad事件中接管的Java类。

在Java类中,我希望收到一个或多个文件上传(通过带有多个文件上传控件的HTML表单,所有文件都具有相同的名称file)。

这有效:

Map parameters = request.getParameterMap();
UploadedFile file = (UploadedFile) parameters.get("file");

这不起作用:

Map parameters = request.getParameterMap();
UploadedFile[] files = (UploadedFile[]) parameters.get("file");

所以我的问题是:如何从Java类中获取超过第一个上传的文件并循环并处理它们?

1 个答案:

答案 0 :(得分:2)

假设您的Map parameters包含所有UploadedFiles,那么您可以使用

获取所有这些内容
for (Entry entry : parameters.entrySet()) {
    System.out.println("parameter: " + entry.getKey());
    if (entry.getValue() instanceof UploadedFile) {
        UploadedFile file = entry.getValue();
        // work with file
    }
}