イメージはデータベースからbyte[]
としてロードされています。 誰もそれをStreamedContent
オブジェクトに変換し、<p:graphicImage value="#{bean.image}"/>
で使用するBeanの例がありますか?バイト配列をp:graphicImagesにロードする
ありがとうございました。
イメージはデータベースからbyte[]
としてロードされています。 誰もそれをStreamedContent
オブジェクトに変換し、<p:graphicImage value="#{bean.image}"/>
で使用するBeanの例がありますか?バイト配列をp:graphicImagesにロードする
ありがとうございました。
@Named
public class ImageBean {
private StreamedContent image;
@PostConstruct
public void init() {
image = new DefaultStreamedContent(new ByteArrayInputStream(byteArray)); // your byte array
}
// setter and getter for image omitted
}
次にあなたがp:graphicImage
要素のすべての
最初にあなたのXHTMLページに#{imageBean.image}
を呼び出し、あなたはStreamedContentを提供するための豆がどのように見えるべきかについて例えばthis great answerをお読みください。
特別な起源については、さらにシリアライズ可能なByteArrayContentが存在します。明確かつ客観的な方法で答えるため
@Named
@ApplicationScoped
public class Bean {
private byte[] imageLoadedFromDatabase;
// code to set (or load) image from database
...
public StreamedContent getImage() {
if (FacesContext.getCurrentInstance().getCurrentPhaseId() == PhaseId.RENDER_RESPONSE) {
return new DefaultStreamedContent();
} else {
return new ByteArrayContent(imageLoadedFromDatabase);
}
}
}
お返事ありがとうございます。私はあなたが以前に示唆した答えを読んで、残念ながらそれは私のためには機能しませんでした(実際には全ビットが働いていましたが、後に別の問題があります。 – Eduardo
ありがとう:
を使用するには、あなたの豆は、このような何かを見ているだろう。私は前にこれをやったと感じましたが、明らかにそうではありませんでした。 – Eduardo