Отображение p: fileupload изображения в p: graphicImage предварительного просмотра без его сохранения

Я использую PrimeFaces 5.3<p:fileUpload> чтобы загрузить изображение PNG, и я хотел бы показать его предварительный просмотр в<p:graphicImage> перед сохранением в базе данных.

Вот MCVE:

<h:form enctype="multipart/form-data">
    <p:fileUpload value="#{bean.uploadedFile}" mode="simple" />
    <p:graphicImage value="#{bean.image}" />
    <p:commandButton action="#{bean.preview}" ajax="false" value="Preview" />
</h:form>

private UploadedFile uploadedFile;

public UploadedFile getUploadedFile() {
    return uploadedFile;
}

public void setUploadedFile(UploadedFile uploadedFile) {
    this.uploadedFile = uploadedFile;
}

public void preview() {
    // NOOP for now.
}

public StreamedContent getImage() {
    if (uploadedFile == null) {
        return new DefaultStreamedContent(); 
    } else {
        return new DefaultStreamedContent(new ByteArrayInputStream(uploadedFile.getContents()), "image/png"); 
    }
}

На компоненте поддержки не возникает ошибок, и изображение не будет загружаться и отображаться на внешнем интерфейсе. Клиент упоминает, что изображение вернуло ошибку 404 not found.

Ответы на вопрос(1)

Ваш ответ на вопрос