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