强制下载后,在Spring控制器中将对象添加到ModelAndView似乎不起作用。
控制器方法代码
ModelAndView view = new ModelAndView("");
view.setViewName("pom-upload");
view.addObject("uploadStatus", "Uploaded pom has been successfully processed!");
response.setHeader("Content-Disposition", "attachment; filename=pom.xml");
IOUtils.copy(inputStreamToDownload, response.getOutputStream());
response.flushBuffer();
return view;
我成功下载了文件。
但是当我尝试访问" uploadStatus
"我的JSP中的消息,如
<c:out value="${uploadStatus}"></c:out>
或
div id="status-message" class="alert alert-success" role="alert">${uploadStatus}</div>
我没有收到来自${uploadStatus}
原因是什么?如何解决这个问题?
答案 0 :(得分:2)
好的,听起来您想在用户下载文件后向用户显示消息。几个选项。
用户点击下载链接。这是成功页面。成功页面使用Refresh标头或javascript来启动下载。所以成功有点早。
有关检测浏览器何时获取下载的一些建议,请参阅Detect when browser receives file download。