Spring MVC/jsp プロジェクトでファイル アップロード ページを取得しようとしていますが、ファイルが正しくアップロードされています。ログ ファイルにファイル名が出力され、ファイル名が ModelAndView に追加されます。ビュー(.jspファイル)でそれらにアクセスするには、それらは存在しないように見えます..しかし、私が追加した別のオブジェクトは..
ModelAndView にファイル名を追加するコントローラーは次のとおりです。
@RequestMapping(value = "/uploadFiles.html", method = RequestMethod.POST)
public String save(@ModelAttribute Token token, @ModelAttribute("uploadForm") FileUpload fileUpload, ModelAndView mav)
{
List<MultipartFile> files = fileUpload.getFiles();
List<String> fileNames = new ArrayList<String>();
if(files != null && files.size() > 0)
{
for(MultipartFile file : files)
{
if(!file.isEmpty())
{
fileNames.add(file.getOriginalFilename());
logger.info("Got file with name: " + file.getOriginalFilename());
}
}
logger.info("Total filenames: " + fileNames.size());
}
mav.addObject("files",fileNames);
mav.addObject("token",token);
return "etl/EtlUploadSuccess";
}
ログ出力は、それが機能していることを示しています:
09:51:09,072 INFO [Controller] [http-bio-8080-exec-4] Got file with name: ExcelFileOne.xlsx
09:51:09,085 INFO [Controller] [http-bio-8080-exec-4] Got file with name: ExcelFileTwo.xls
09:51:09,096 INFO [Controller] [http-bio-8080-exec-4] Total filenames: 2
ファイル名を表示する必要がある成功ページのコードのスニペットを次に示します。
<p>The following files have been uploaded successfully with the token ${token.name}:</p>
<c:forEach items="${files}" var="file">
${file}<br/>
</c:forEach>
ページには次が表示されます。
The following files have been uploaded successfully with the token testToken:
それだけです...ファイル名が表示されない理由がわかりません...