File upload Struts使用Dyna操作表单上传多个文件(Struts 1)

File upload Struts使用Dyna操作表单上传多个文件(Struts 1),file-upload,struts,struts-1,File Upload,Struts,Struts 1,我需要在一个页面上传多个文件。对于DynaAction表单,必须指定每个表单的“名称”。我需要这是动态的。我相信我可以使用数组/列表来获取一组文件,但我无法将这些文件与任何特定的文件进行匹配 一张地图是完美的,但我恐怕无法找出地图的“关键”部分 有什么想法吗?所以我研究并花了3个小时尝试不同的东西。网络上关于这方面的信息很少。有很多未回答的问题。现在Struts 1是日落,可能没有更多的信息了,所以我想我应该在棺材上加一颗钉子 我发现我做了一笔比我需要做的更大的交易。在这两页的帮助下: 我发

我需要在一个页面上传多个文件。对于DynaAction表单,必须指定每个表单的“名称”。我需要这是动态的。我相信我可以使用数组/列表来获取一组文件,但我无法将这些文件与任何特定的文件进行匹配

一张地图是完美的,但我恐怕无法找出地图的“关键”部分


有什么想法吗?

所以我研究并花了3个小时尝试不同的东西。网络上关于这方面的信息很少。有很多未回答的问题。现在Struts 1是日落,可能没有更多的信息了,所以我想我应该在棺材上加一颗钉子

我发现我做了一笔比我需要做的更大的交易。在这两页的帮助下:

我发现您真正想要做的是使用映射来存储FormFile对象。我发现的大多数文档都依赖于模型对象,但我使用的是DynaForms。因此Struts-config.xml如下所示:

<form-property name="theFiles" type="java.util.HashMap"/>
 <c:forEach items="${userForm.map.roleChanges}" var="changeMap" varStatus="status"> 
...
    <html:file property="theFile(${changeMap.key.roleName})"  styleId="theFile" />
...     
</c:forEach>
这是FormFile对象的映射。甜言蜜语

我挂断了,因为我以前从未使用过ArrayList/Map之类的东西。它很简单(应该是这样的。另外,在一些Struts标签上有很多关于“index”参数的讨论。我花了一段时间摆弄它,但无法让它工作。我想这是因为DynaForm。不确定

Map fileMap =  (Map)userForm.get("theFile");