Отображение BLOB в Vaadin Grid

369
02 марта 2017, 23:02

Приветствую! Ситуация такая - есть БД Оракл, в нем таблица Worker, в ней фото рабочих в формате BLOB. Неофходимо отобразить в Vaadin Grid вместе с остальными данными.

Как сейчас работает: в классе @Entity для Worker поле foto выдергивается как byte[], из него приходится отдельно сохранять на жеский диск, а в грид подсовывать new ThemeResource(PATH) в ImageRenderer().

Есть ли возможность напрямую передовать картинку без сохранения на жеский диск?

Answer 1
// Create the stream resource with some initial filename
StreamResource imageResource = new StreamResource(imageSource, "initial-filename.png");
// Instruct browser not to cache the image
imageResource.setCacheTime(0);
// Display the image
Image image = new Image(null, imageResource);

Более подробно о Resources и о StreamResources в Vaadin

Answer 2

Лучшим решением будет перенос картинок из базы на front-end сервер и сохранение в базе только ссылок.

ЗЫ Хранение графических данных в blob полях - то еще извращение)) Извини, если не помог.

READ ALSO
Ошибка java.lang.IllegalArgumentException: No view found for id

Ошибка java.lang.IllegalArgumentException: No view found for id

Есть три страницы наследованные от Fragment

849
Создание класса для XML-структуры

Создание класса для XML-структуры

Мне необходимо взаимодействовать с REST сервисом, который отдает ответы в XMLСтруктура XML-документа такая:

298
Векторный город с помощью элементов

Векторный город с помощью элементов

Сделал векторную картинку с помощью элементов htmlНо почему то, когда я меняю высоту окна, она странно реагирует и всё сжимается, хотя должно...

321
Лента времени на js

Лента времени на js

Подскажите пожалуйста, как можно реализовать на js вот это

314