数据表celleditor中的Primefaces filedownload无法正常工作

时间:2016-09-09 11:20:02

标签: file primefaces datatable download tablecelleditor

我在Primefaces中有一个数据表,有一个celleditor上传和下载文件。 文件上传正在运行。 文件下载不起作用,它只重新加载页面。 当我将下载按钮直接放在p:列下时,下载工作正常。 (因此下载按钮在编辑模式下可见)

有什么不对,有什么想法吗?

这是我的代码(简化):

<p:column headerText="Header">
  <!-- Download Button at this position works -->
  <p:cellEditor>
    <f:facet name="output">
      <p:commandButton id="download" value="Download" ajax="false">
        <p:fileDownload value="#{bean.downloadFile}" />
      </p:commandButton>
    </f:facet>
    <f:facet name="input">
      <p:fileUpload fileUploadListener="#{bean.uploadFile}" label="upload" mode="advanced" auto="true" process="@this" />
    </f:facet>
  </p:cellEditor>
</p:column>

托管bean:

import java.io.InputStream;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;


public StreamedContent getDownloadFile() {
    final InputStream stream = FacesContext.getCurrentInstance().getExternalContext().getResourceAsStream("/images/test.png");
    return new DefaultStreamedContent(stream, "image/png", "test.png");
}

1 个答案:

答案 0 :(得分:0)

不是真的修复,但我在我的应用程序中遇到了同样的问题并通过删除单元格编辑器组件来解决它,并将其余组件样式化并排显示(显示:内联块)以提供看起来不错的东西