2016-11-05 58 views
1

我有一個緩衝圖像,我需要在JSF頁面中顯示它。 有沒有可以直接顯示緩衝圖像的UI組件?我正在使用JSF 2.2。如何在JSF中顯示緩衝圖像而無需在磁盤上寫入圖像?

+0

的可能的複製[顯示圖像作爲字節\ [\]從數據庫如在JSF頁面的圖形圖像(https://stackoverflow.com/questions/30606503/show-圖像作爲字節從 - 資料庫作爲圖形圖像中的JSF頁) – Kukeltje

回答

0

如果你只有被緩衝的圖像,你可以使用Omnifaces庫,它允許您通過傳遞byte[]到組件

<o:graphicImage value="#{bean.image}" dataURI="true" /> 

來渲染圖像如果你有緩衝的圖像,你可以轉換爲字節數組像這樣:

ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
ImageIO.write([image],[image_extension], baos); 
byte[] imageToPassAsValueAttr = baos.toByteArray(); 

您還可以創建一個servlet接收圖像id作爲一個GET請求,並從該點上,你可以得到的參數值,查找資源和令狀e圖像內容進行響應。

@BalusC有一個很好的例子here