Primefaces媒体显示旧的PDF

mey*_*uel 9 caching primefaces jsf-2

我有一个PDF文档,它是从应用程序中包含的数据生成的,这个pdf文档是使用媒体组件primefaces显示的,一切正常,但是为了对数据源进行更改,我仍然显示旧文档.到目前为止,我已经通过清除浏览器缓存解决了,但是这个问题怎么可能解决这个问题呢?

     <p:media value="#{listadoFacturasMB.fileDownload}" width="100%"  height="600px" player="pdf">
                    <f:param name="id" value="#{listadoFacturasMB.selectedFactura.idFactura}" />
     </p:media>  
Run Code Online (Sandbox Code Playgroud)

Imr*_*ram 5

我已经用 primefaces 5.3 对其进行了测试,其中的媒体标签有一个属性cache,默认值为 true,将其设置为 false,它将始终从服务器加载文件而不是缓存


mey*_*uel 2

我在这里找到的部分答案: 链接 我只需要强制组件始终具有不同的 id,尽管它是同一个文档。这就是 xhtml 中的代码:

<p:media value="#{serviciosMB.servicioDownload}" width="100%"  height="600px" player="pdf">
                    <f:param name="id" value="#{serviciosMB.idFile}" />
</p:media>
Run Code Online (Sandbox Code Playgroud)

支持豆:

public String getIdFile() {
    return  java.util.UUID.randomUUID().toString();
}
Run Code Online (Sandbox Code Playgroud)