<p:filedownload>完成或取消后删除文件</p:filedownload>

时间:2013-12-01 16:53:54

标签: jsf events jsf-2 primefaces download

我在网络服务器上创建了一个临时文件。该文件通过<p:fileDownload>下载。这很好用。但是,当下载完成或中止时,我需要删除此临时文件。我不知道如何查看此活动。

在JavaScript中有PrimeFaces.monitorDownload(start, stop)可用,但正如我观察和理解的那样,一旦服务器准备好提供下载并且下载窗口打开,就会触发stop事件,因此它会被&#39}对我没用。

<p:fileDownload>完成或取消后,如何删除文件?

2 个答案:

答案 0 :(得分:0)

使用包含p:fileDownload的p:commandButton的actionListener属性。像这样:

<p:commandButton ... actionListener="#{myBean.deleteFile()}>  
    <p:fileDownload ... />  
</p:commandButton>  

答案 1 :(得分:0)

我还没试过这个,但我能想到的一个选项是你可以使用FileDownload监视器并在stop函数中使用 <p:remoteCommand> 来触发服务器上的文件删除