2015-08-02 3 views
-5

Я хотел бы получить и отобразить изображение в приложении Java EE с использованием JSF 2, но БЕЗс использованием любого сервлета.Показать изображение в Java EE

Я уже получил дату из базы данных как Byte [], но я не знаю, как я буду отображать изображение на странице JSF. Я пробовал тип DefaultStreamedContent и Byte[] без успеха.

+2

Можете ли вы быть более конкретным? Название ничего не говорит. Что вы сделали до сих пор? Отправьте код, чтобы показать, где вам нужна помощь. Этот вопрос сейчас является прекрасным кандидатом, который будет закрыт как слишком широкий. Пожалуйста, попробуйте отрегулировать его. –

+0

сделано! Надеюсь, это более выразительно! –

+1

как Piotr sayd ... вы должны опубликовать немного кода, чтобы мы могли воспроизвести вашу проблему/ситуацию ... используете ли вы только JSF или любую стороннюю библиотеку, такую ​​как простые лица? как выглядит ваш бэк-бэк? и ваша лицевая страница? почему бы не использовать простой сервлет? конкретная причина? – StefanHeimberg

ответ

1

Хотя на 100% не ясно, что вы делаете, компонент OmniFaces graphicImage действительно был построен для отображения изображений с Byte[] без использования сервлета.

Например:

Подложка боба:

@Named 
@ApplicationScoped 
public class ImageStreamer { 

    @Inject 
    private ImageService service; 

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

}

Страница:

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

Обратите внимание, что это сокращенный пример, и на практике не будет поставьте там hardcoded 1.

Для более полного примера см: showcase.omnifaces.org/components/graphicImage

Смежные вопросы