Ich habe Schwierigkeiten, png Bild in meinem PrimeFaces 6.1 anzuzeigen.Primefaces 6.1 png Bildanzeige mit schwarzem Hintergrund
Image wurde aus der Datenbank im Byte-Array-Format geladen. jpg wird gut angezeigt, aber png immer mit schwarzem Hintergrund angezeigt.
Dies ist mein Code Snippet für JSF:
<p:graphicImage value="#{fileControlBean.image}">
<f:param name="fileId" value="#{file.fileId}" />
</p:graphicImage>
und zurück Bohne als:
public StreamedContent getImage() throws IOException {
FacesContext context = FacesContext.getCurrentInstance();
if (context.getCurrentPhaseId() == PhaseId.RENDER_RESPONSE) {
// So, we're rendering the HTML. Return a stub StreamedContent so that it will generate right URL.
return new DefaultStreamedContent();
}
else {
// So, browser is requesting the image. Return a real StreamedContent with the image bytes.
String fileId = context.getExternalContext().getRequestParameterMap().get("fileId");
File file = (File) fileBean.getFileCache().get(fileId);
return new ByteArrayContent(file.getThumbnail(),file.getFileType(),file.getFileName());
}
}
Alle anderen jpg Anzeige richtig, aber PNG-Bild sieht transparent eingestellt wurde auf 1. Meine Frage: Wie kann ich es wieder transparent machen? oder es ist ein Fehler?