четверг, 21 апреля 2011 г.

Стратегии кастомизации и разработки платформы Лайфрея.

Лайфрей обьявил, что портал можно расширять теми средствами, с какими кто больше знаком. Это могут быть: JSF 2, Icefaces, Struts 2, Spring MVC, Vaadin, Alloy UI & YUI, jQuery, Dojo и другие.


1) Первая стратегия это генерация кода. Она представлена Service Builder-ом. Он по хмл-дескриптору генерирует необходимые для портала и портлетов интрефейсы и классы, которые могут использоваться напрямую в портале созданием и использованием из них обьектов, или удаленно -- в виде веб-сервисов.
Сервис-билдер может генерить:
- Ява бины;
- SQL-сприпты для создания таблиц;
- Hibarnate конфигурацию;
- Spring конфигурацию;
- Axis Web Services( сервисы через SOAP протокол);
- JSON Javascript Interface;

2) Plugins SDK Environment - среда для разработки и развертывания плагинов. К плагинам в лайфрее относятся: портлеты, темы, шаблоны лейаутов,"вебы", хуки и "ексты".
- Portlets -- веб-приложения, которые работают в одном из блоков веб-страницы(так называемом виджете).
- Themes -- определяют дизайн(лук енд фил) страниц портала.
- Layout Templates -- предлагают способы как портлеты будут размещаться на странице.
- Hooks -- этот плагин позволяет включаться в разные этапы(места) работы портала, изменяя его функциональность ядра.

- Webs -- обычные Java EE веб модули, разрабатываемые для работы вместе с порталом. Их примеры это ESB (Enterprise Service Bus), SSO (Single Sign-On) и т.д. Это чистые веб-приложения, в которых есть слой для связывания с порталом. В этом виде веб-приложение также предусмотрена возможность хуков или сервисов, которых можно сгенерировать Сервис-Билдером; эта парачка будет работать в среде данного веба, но подключаться к порталу. Вебы автодеплоятся через директория автодеплоя портала.
- Ext -- это, как и хуки, инструмент для редактирования функционала ядра портала. Через среду Plugins SDK мы какбы воспроизводим структуру каталогов портала, можем делать изменения в некоторых его частях, а потом это структура каталогов мержится с оригинальной портала, а результат деплоится. Таким образом мы получаем видоизмененный портал, но без правки оригинальной структуры портала -- если что можем откатиться к оригиналу.

Что же может быть в отдельном проекте разарботки? В нем может быть как отдельный плагин, так и некоторые обьединения плагинов, которые могут деплоится в одном war-архиве.
В одном проекте-портлете может быть группа портлетов.
В хуки могут быть либо в проектах-портлетах, либо в проектах-вебах, либо, понятное дело, быть в самостоятельных проектах.


3) Последняя стратегия это Liferay IDE. Который предаствлен плагином Еклипса.
Он автоматизирует поддержку плагин СДК, генерацию проектов(портлет, веб, екс, гибридов), импорттивание проектов.
Но мне более по душе Portal Park -- это NetBeans IDE plugin. Этот пакет содержит плагины, которые позволяют, пользоваться прелестями Plugins SDK и Service-Builder-ом, и даже по-моему он не пользуется лайфреевскими, а генерит сам по стандратам, поскольку можено эти плагины совать не только в лайфрей, а и WebSpace(это на сколько я понял реализация портала от Сана, сейчас проекта нет его поглотил Глассфиш). Лайфрей портал подключается в нетбинс, как Сервер и в него происходят все деплои.

Комментариев нет:

Отправить комментарий