在Java EE中显示图像

时间:2015-08-02 21:11:26

标签: image java-ee jsf-2

我想使用JSF 2在Java EE应用程序中检索和显示图像,但没有 使用任何servlet。

我已经从Byte []中检索了数据库中的日期,但我不知道我将如何在JSF页面中显示图像。我尝试了DefaultStreamedContentByte[]类型但没有成功。

1 个答案:

答案 0 :(得分:1)

虽然它并不是100%清楚你正在做什么,但OmniFaces graphicImage组件确实构建为在不使用Servlet的情况下显示来自Byte[]的图像。

例如:

支持bean:

 @Named
 @ApplicationScoped
 public class ImageStreamer {

     @Inject
     private ImageService service;

     public byte[] getById(Long id) {
         return service.getContent(id);
     }

}

页:

<o:graphicImage value="#{imageStreamer.getById(1)}" />

请注意,这是一个缩短的示例,在实践中,您不会将硬编码的1放在那里。

有关更完整的示例,请参阅:showcase.omnifaces.org/components/graphicImage