Генерация динамической диаграммы / передача объекта сервлету из JSF 1.2 - PullRequest
4 голосов
/ 06 января 2011

Я пытаюсь динамически генерировать диаграммы, используя библиотеку JFreeChart, и отображать их пользователю на внешнем интерфейсе.Мой проект использует JSF 1.2 в качестве технологии просмотра, и мы пытаемся определить стратегию для отображения BufferedImage.

На данный момент наилучшим вариантом представляется создание графика с использованием сервлета и использование h:graphicImage для указания на это местоположение.Основной вопрос заключается в том, как я могу передать объект из JSF сервлету, чтобы генерация графа была динамической на основе значений в объекте?

Ответы [ 2 ]

4 голосов
/ 06 января 2011

Пусть JSF поместит его в сеанс с автоматически сгенерированным и уникальным ключом, передаст этот ключ в качестве параметра запроса или pathinfo сервлету и, наконец, позволит сервлету удалить его из сеанса по ключу и использовать его.

Бин JSF (во время инициализации или метода действия):

this.key = UUID.randomUUID().toString();
externalContext.getSessionMap().put(key, object);

Представление JSF:

<h:graphicImage value="servleturl?key=#{bean.key}" />

Сервлет:

String key = request.getParameter("key");
Object object = request.getSession().getAttribute(key);
request.getSession().removeAttribute(key);
// ...
2 голосов
/ 06 января 2011

Лично я предпочел бы передавать данные как часть URL, поскольку это позволяет избежать зависимости от состояния сервера и облегчает внешний доступ к сервису карт.Однако вы можете столкнуться с некоторыми практическими ограничениями , если ваш набор данных большой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...