一开始,我尝试描述上下文。我有一个按钮,点击返回文件,包含相关日期的数据。单击按钮时,我将查询(带有日期from-to)发送到DB并将数据解析为正确的格式,并以StreamResource
的形式返回FileDownloader
。所有课程均来自Vaadin
个包。
Button btExport = new Button("Export");
FileDownloader fileDownloader = new FileDownloader(getReportsStream());
fileDownloader.extend(btExport);
//update resource to download on click
btExport.addClickListener(event -> {
fileDownloader.setFileDownloadResource(getReportsStream());
});
在Chrome和IE浏览器中一切正常。在Mozilla中,Firefox不是。在Firefox浏览器中,始终返回旧的StreamResource
对象。总是返回相同的文件,它看起来像Firefox从那种缓存,因为在日志中我没有找到事件点击Firefox,任何行动。在Chrome和IE中存在日志。
所有浏览器都是最新的。 Vaadin
版本:7.7.6
你知道为什么会这样吗?或者也许我可以用不同的方式来实现下载文件?
编辑///
我找到了解决方案,但我不知道它是否是暂时的。重新安装浏览器后,不再出现奇怪的行为。如果它能在几天内正常工作,我将把它作为解决方案。
答案 0 :(得分:0)
首先我在安装Firefox 57之后在Firefox 49上进行测试,但没有任何变化。只有当我清理缓存并且每个仍然保持它看起来它的工作原理。我检查另一台计算机并在第57版上工作,在版本49上没有工作。
结论是拥有最新的浏览器并确保卸载旧版本的浏览器并进行清理。