Как генерировать и обрабатывать динамические макеты и символы в JSF / Richfaces? - PullRequest
1 голос
/ 02 августа 2011

Моя цель - создать графический макет (состоящий из компонентов Richfaces) на основе некоторой входной конфигурации (например, файла XML) и отобразить ее в моем веб-приложении. Компоновка состоит из графических символов, представляющих различные объекты в системе: каждый символ должен отображаться на объект в системе, чтобы отобразить его состояние. Файл конфигурации XML используется для определения символьных соединений и позиций в макете, а также правил их сопоставления с сущностью. Как мне этого добиться?

Я думал о создании библиотеки символов в такой технологии, как SVG, где вы можете определить как аспект, так и поведение, а затем просто «обернуть» каждый символ SVG в динамически создаваемый компонент richfaces, что позволило бы мне обрабатывать как пользовательские взаимодействия, так и правила отображения, определенные в символе. К сожалению, JSF / Richfaces не поддерживают изображения SVG, поэтому мне пришлось бы использовать обычный HTML без функций Richfaces.

Другим способом достижения этого является простое определение общих символов в файле XML, каждый из которых имеет атрибут, указывающий связанное изображение, правило отображения и т. Д., А затем генерирует соответствующий компонент richfaces изнутри сети. -приложение. Таким образом, смогу ли я затем отобразить все символы в правильном положении и, следовательно, создать полный динамический макет?

Не могли бы вы предложить лучший подход? Большое спасибо.

1 Ответ

0 голосов
/ 02 августа 2011

Я полагаю, что HTML5 имеет прямую поддержку SVG-изображений, однако он все равно является встроенным объектом в обычном HTML.Это тоже то, чего я так долго ждал, однако я не верю, что какая-либо из существующих библиотек компонентов JSF2 пока предлагает это.

Вот хорошее объяснение возможного обходного пути:

Начало работы с графическими объектами SVG на страницах JSF 2.0

Потенциально вы можете создать пользовательский компонент Facelet, используя этот обходной путь?

Я думаю, что когда ваш единственный инструментэто молоток, все выглядит как гвоздь.Я бы попытался использовать технологию RIA (Rich Internet Application), которая лучше подходит для отображения и манипулирования векторной графикой, такой как HTML5, Flash + Flex, Silverlight и т. Д.

...