26
Знакомство с LIFERAY Дмитрий Гаврилов

Liferay

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Liferay

Знакомство с LIFERAY

Дмитрий Гаврилов

Page 2: Liferay

Знакомство с Liferay

• Что такое Liferay Portal• Что такое Portlet• Для чего нужен Liferay• Плюсы и минусы Liferay

Page 3: Liferay

It's a WebSite...

It's a Portal...

It's a CMS...

It is Liferay !

Page 4: Liferay
Page 5: Liferay
Page 6: Liferay
Page 7: Liferay

Что такое портлет ?

Портлет — подключаемый, сменный компонент пользовательского интерфейса веб-портала (элемент веб-страницы).

Page 8: Liferay

Похоже на сервлет !

Управляются специальным контейнером

Генерируют динамический контент

Жизненный цикл управляется контейнером

Клиет парадигма request/response

Непохоже на сервлет !

Фрагменты разметки.

Не могут быть адресованы напрямую.

Не могут генерировать независимый контент.

Дополнительный функционал (моды, и.т.д)

Page 9: Liferay
Page 10: Liferay
Page 11: Liferay

Flex+AIR portal container for Liferay

Page 12: Liferay

WEB.XML<web-app> <display-name>Hello World Portlet </display-name> <welcome-file-list <welcome-file>index.jsp</welcome-file-list></web-app>

Portlet.xml<portlet> <description>HelloWorldDescription </description> <portlet-name>HelloWorld…………………………………………</portlet>

Web Project

Page 13: Liferay

Liferay-portlet.xml<liferay-portlet-app><portlet><portlet-name>HellowWourld</portlet-name>…………….…………….</ liferay-portlet-app>

Liferay-display.xml<liferay-portlet-app>...<role-mapper><role-name>user</role-name><role-link>User</role-link></role-mapper></ liferay-portlet-app>

Page 14: Liferay

public class HelloWorld extends GenericPortlet { protected void doView(RenderRequest request,

RenderResponse response) throws PortletException, IOException { response.setContentType("text/html");

response.getWriter().println("Hello Portlet"); }}

Page 15: Liferay

init(PortletConfig config)

processAction(ActionRequest request, ActionResponse response)

render(RenderRequest request, RenderResponse response)

destroy()

Page 16: Liferay

Спецификация Java-портлетов JSR 168

• Поддержка MVC паттерна

• Моды ( состояния ) портлетов

• Статусы окон ( размер страницы портала и.т.д )

• Packaging формат

Page 17: Liferay

Спецификация Java-портлетов JSR 286

• Inter-Portlet Communication (взаимодействие

между портлетами)

• AJAX, JSON

• Filters and listeners

• WASP

Page 18: Liferay

Любой портал, который заявляет, что он потдерживает JSR 286 или JSR 168, должен это поддерживать.

Page 19: Liferay

Сайты-визитнки

Корпоративные порталы

Сайты с CMS

Интернет магазины

Интернет банки, Социальные сети

Для чего нужен Liferay

Page 20: Liferay

Сайты-визитнки

Корпоративные порталы

Сайты с CMS

Интернет магазины

Интернет банки, Социальные сети

Для чего нужен Liferay

Page 21: Liferay

• Большой BOX-IN:

User management

Social networking

Security

Integrations

Reports

Workflow features

+

Page 22: Liferay

• Разработки портлетов на разных языках (Ruby,

php,…)

• Open-Source Java (есть платная версия)

• ESB Liferay

• Хороший код

• Обновляется

• It's easy to use

+

Page 23: Liferay

• Мало документации

• Сложно начать

• Тяжёлая разработка

• Уязвимости и баги (а где их нет ? )

-

Page 24: Liferay

Другие порталы

• Oracle Portal http://www.oracle.com/technetwork/middleware/portal/overview/index.html

• Microsoft SharePoint Portal Server http://en.wikipedia.org/wiki/Microsoft_SharePoint

• JBoss Portal

http://www.jboss.org/jbossportal

Page 25: Liferay

Примеры портлетов под Liferay• Hibernate :

http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030370

• Spring : http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030593

• Service Builder : http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030579

• JSP : http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030504

• JSF Technologies : http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030470

• PHP : http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030529

• Ruby : http://www.liferay.com/downloads/liferay-portal/community-plugins/-/software_catalog/products/2030564

Page 26: Liferay