J'ai un Datatable dans Primefaces avec un celleditor pour télécharger et télécharger des fichiers. Le téléchargement du fichier fonctionne. Le téléchargement du fichier ne fonctionne pas, il ne recharge que la page. Lorsque je mets le bouton de téléchargement directement sous la colonne p:, le téléchargement fonctionne. (Ainsi, le bouton de téléchargement est visible en mode édition)Primefaces filedownload dans celleditor Datatable ne fonctionne pas
Qu'est-ce qui ne va pas, des idées?
Voici mon code (simplifié):
<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>
et le haricot géré:
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");
}