2016-09-09 17 views
2

ファイルをアップロードしてダウンロードするcelleditorを持つPrimefaceでDatatableを使用しています。 ファイルのアップロードが機能しています。 ファイルのダウンロードは機能しません。ページを再ロードするだけです。 ダウンロードボタンをp:列の下に置くと、ダウンロードが機能しています。 (ダウンロードボタンは編集モードで表示されます)Datatable celleditorでPrimefaces filedownloadが動作しない

何が問題なのですか?ここで

(簡体字)私のコードです:

<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"); 
} 

答えて

0

ない修正が、私は私のアプリで同じ問題を持っていたし、セルエディタコンポーネントを削除し、残りのコンポーネントを並べて表示する(表示:インラインブロック)ようにして解決しました。

関連する問題