Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf Safari没有';无法正确下载名为的文件_Jsf_Primefaces_Safari - Fatal编程技术网

Jsf Safari没有';无法正确下载名为的文件

Jsf Safari没有';无法正确下载名为的文件,jsf,primefaces,safari,Jsf,Primefaces,Safari,我有一个文件名为“屏幕截图2552018-09-10在08.17.1687923789238794237893247899234789234789234789023478994382900987243872348729907249023784237894728937980234789923497428392348794328774288932478932479873924789324890278992347892347892347892347892347892347892347970897890

我有一个文件名为“屏幕截图2552018-09-10在08.17.1687923789238794237893247899234789234789234789023478994382900987243872348729907249023784237894728937980234789923497428392348794328774288932478932479873924789324890278992347892347892347892347892347892347892347970897890432879(1.png)”,我的代码正在使用命令链接获取它。这在Chrome中运行良好,但在Safari中则不行。Safari更改路径URL中某些内容的文件名

例如:url是localhost:8080/app/documents/771,因此该文件被重命名为771

狩猎14

代码


我看到HTML5有一个下载属性,所以我试图强制它

代码


所以在研究之后,我认为你应该向苹果报告这个问题

见PF票:

此文件名在Chrome、Firefox和MS Edge中运行良好。它只在Safari中不起作用


在PF 9.0中,我们添加了一个新功能,即AJAX文件下载功能,Safari可以正确下载文件名。

首先要尝试的显然是将PrimeFaces升级到最新版本。查看此提交示例:@JasperdeVries不幸的是,对于我的bc团队来说,这并不是一件容易的事情huge@DanielaMorais我觉得Jasper正在使用他提到的修复程序,因为它有很多漏洞。看起来带有“空格”和“parens”的文件名是个问题,而您的示例两者都有。您能检查一下Safari网络流量工具中HTTP头的内容配置吗?
<h:commandLink value="#{document.fileName}" ajax="false" immediate="true"
 onclick="PrimeFaces.monitorDownload(PF('blockUIWV').show(), PF('blockUIWV').hide()); _paq.push(['trackEvent', 'Documents', 'Download document,'Download']);">
 <p:fileDownload value="#{bean.downloadDocument(document.myDocument)}" />
</h:commandLink>
<h:commandLink value="#{document.filename}" ajax="false" immediate="true"
 pt:download="#{document.filename}
 onclick="PrimeFaces.monitorDownload(PF('blockUIWV').show(), PF('blockUIWV').hide()); _paq.push(['trackEvent', 'Documents', 'Download document,'Download']);">
 <p:fileDownload value="#{bean.downloadDocument(document.myDocument)}" />
</h:commandLink>