Liferay.Часть 1. Краткий обзор и подводные камни.

By | 5 августа, 2015

Автору подвернулась задача сделать внутри корпоративный (т.е. с AD авторизацией) сайт с  форумом, голосовалкой, библиотекой документов и доступом с разных сторон Интернет -Интранет через TSL и мобильных (Android и i-OS) устройств. Бесплатное решение.Чтобы сразу. Быстро (это не получилось). Без серьезных разработок. И разные модераторы для разных разделов. Времени на отбор и тестирование продуктов не было. Подвернулся Liferay CE с открытым исходным кодом, если быть точнее на тот момент Liferay Portal 6.2 CE GA2  (сейчас уже GA4). Тема была не изучена и я с дуру приступил к развертыванию. Сразу обрадовала портлетная архитектура продукта, соответствующая современным корпоративным порталам, магазин приложений для ленивых , откуда впрочем, из бесплатных приложений в последствии толком ничего не было установлено. Тем не менее проект удалось вывести в свет и портал заработал.

Решение достаточно изящное из коробки. Тема по умолчанию выглядит хорошо. Наличие Панели управления и безупречной системой раздачи прав, интеграции с LDAP (импорт пользователей из AD), Active Directory NTLM авторизации в IE и управление множественными организациями путем назначения организационных администраторов подкупает собой добротностью. Немного корявая локализация тоже по началу не сильно смущает. Из предложенного на тот момент функционала в пакете нормально работала только вся инфраструктура прав доступа, интеграция с корпоративными каталогами (AD) , немного убогие web формы — которые мне за небольшую плату потом доработали  (компания (-=реклама=-)) , форум (с небольшими глюками), опросы, публикация Web контента (почти безупречна), блоги (на этом построен весь портал) и CMS  работает безупречно в рамках стандартной темы. Если заказчик требует большего (как в моем варианте) — добро пожаловать — Eclipce (в моем случае Kepler)+ Liferay Plugin SDK (+ Maven), CSS + Compas — и все-все , что я так не люблю, ибо не разработчик я (по крайней мере сайтов) в душе совсем. В GA2 косяк с основной темой  в CSS при публикации  web контента для браузеров Firefox выводил  из себя, пока добрые люди не разобрались, но об этом позже , терпеливому читателю…

Для тех кто привык работать коммерческими порталами только в CMS (без доп. программирования, допиливания системной части ) и тем кому нужен быстрый результат за неделю — забудьте, выберете другой продукт — чем дороже тем лучше. Но, — вы скачали сборку с TomCat, разархивировали на своем ноутбуке запустили startaup.bat и наслаждаетесь. Можно завтра показывать заказчику. Вы даже не подозреваете, что Вам еще немного будет нужно все допилить. Лучше сразу разверните песочницу виртуальной машине, все делайте там, а потом накатывайте на продуктив, ну Вы знаете ….

Еще из недостатков. Наличие документации на сайте Liferay достаточно условное. Т.е. есть wiki по разным версиям с комментариями индийских разработчиков, куда иногда приходит STAFF и успокаивает разгневанных, но иногда ковырять приходилось долго и не все удавалось понять. Да и разработчиков в России достаточно мало, а те кто есть, за проекты менее 200 тыс. руб. не берутся. Фрилансеры про Liferay слушать не хотят — им  и так хорошо, поставить задачу там даже не пытайтесь.

Далее будут записи с салфеток для себя при сложной для продукта операционной системы windows 2008 server (не забывайте запускать все с правами администратора)   — под linux установка в некоторых моментах проще, но у меня требования заказчика — закон — OS windows. Подразумевается, что Вы немого почитали про продукт и знаете, что  вся конфигурация liferay хранится в файле portal.properties в корне каталога портала.

1.1 Считаем, что переменные среды JAVA_HOME и CATALINA_HOME Вы прописали, подключим MySQL (при инсталляции MySQL не ставьте его в каталог Programm File х86 — потом проще будет в скриптах читать c:\MySQL):

mysql -u root -p
CREATE DATABASE lportal CHARACTER SET utf8;
mysql> GRANT ALL PRIVILEGES ON lportal.* to ‘ladmin’@’localhost’ IDENTIFIED BY ‘12345’;

И (не кидайтесь в меня камнями — знатоки My SQL) забекапим базу сразу 🙂

>mysqldump -u root -p lportal > C:\TEMP\lportal.sql

проверяем восстановление (новичкам особенно обратить внимание на направление слеш) :

use lportal;
SOURCE c:/TEMP/lportal.sql;

эта процедура не описана только ленивым, останавливаться на ней не будем.

Добавить комментарий