SlideShare a Scribd company logo
Знакомство с  LIFERAY Дмитрий Гаврилов
Знакомство с  Liferay Что такое  Liferay Portal Что такое  Portlet Для чего нужен  Liferay Плюсы и минусы  Liferay
It's a WebSite... It's a Portal... It's a CMS... It is Liferay !
 

Recommended for you

The Best Portlet
The Best PortletThe Best Portlet
The Best Portlet
wsrpjsr286jsr168
RESTful Architechture (Highload++ 2008)
RESTful Architechture (Highload++ 2008)RESTful Architechture (Highload++ 2008)
RESTful Architechture (Highload++ 2008)

RESTful архитектура для масштабируемых систем

architechtureresthighload
!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture
 
 
Что такое портлет ? П��ртлет — подключаемый, сменный компонент пользовательского интерфейса веб-портала (элемент веб-страницы).
Похоже на сервлет !  Управляются специальным контейнером Генерируют динамический контент Жизненный цикл управляется контейнером Клиет парадигма request/response Непохоже на сервлет ! Фрагменты разметки. Не могут быть адресованы напрямую. Не могут генерировать независимый контент. Дополнительный функционал (моды, и.т.д)

Recommended for you

Wild wild web. html5 era
Wild wild web. html5 eraWild wild web. html5 era
Wild wild web. html5 era
tostermicrosoft
Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)

Рассказ о том, как проект banki.ru принял решение убегать от Битрикса через SOA, а так же о том, как мы бежали к SOA, и что получилось в итоге

soaбитрикс
JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.

Real-time веб-приложения

javascriptweb
 
 
Flex+AIR portal container for 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

Recommended for you

Meet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis BosakMeet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis Bosak

Denis Bosak (Magecom): Front-end in Magento, and more. Prospects, technologies, and tools. Денис Босак (Magecom): Front-end в Magento и не только. Перспективы, технологии, инструменты.

magentodevelopmentfrontend
Telerik Web aii
Telerik Web aiiTelerik Web aii
Telerik Web aii
telerik c# visual studio
Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложении

Александр Сербул (Битрикс24) Видеозвонки и шаринг экрана в мобильном приложении О спикере Отвечает за контроль качества интеграции и внедрений компании «1С-Битрикс» и выступает в роли архитектора и разработчика проектов, связанных с высокой нагрузкой и отказоустойчивостью («Битрикс24»). Окончил кафедру «Автоматизация и информатика» Донского государственного технического университета. До 2002 года работал советником в администрации Президента России по Южному федеральному округу, разработал официальный портал Юго-Западного банка Сбербанка России. Увлекается философией Unix, гибкими методологиями разработки ПО, системным анализом и проектированием. О докладе Рассмотрим технологию реализации видеозвонков HD-качества и шаринга экрана для мобильны�� приложений на платформах Android и Apple. Подробно остановимся на подводных камнях и доработках ядра WebRTC. INTERCOM 2016, Москва Сайт конференции: https://intercomconf.com/

intercomБитрикс24
L iferay-portlet.xml <liferay-portlet-app> <portlet> <portlet-name>HellowWourld</portlet-name> …………… . …………… . </ liferay-portlet-app> L iferay-display.xml <liferay-portlet-app> ... <role-mapper> <role-name>user</role-name> <role-link>User</role-link> </role-mapper> </ liferay-portlet-app>
public class HelloWorld extends GenericPortlet { protected  void  doView (RenderRequest request, RenderResponse response) throws PortletException, IOException { response.setContentType(&quot;text/html&quot;); response.getWriter().println(&quot;Hello Portlet&quot;); } }
init(PortletConfig config) processAction(ActionRequest request, ActionResponse response) render(RenderRequest request, RenderResponse response) destroy()
Спецификация Java-портлетов JSR 168  Поддержка  MVC  паттерна Моды ( состояния ) портлетов Статусы окон ( размер страницы портала и.т.д ) Packaging  формат

Recommended for you

Desktop app based on node js and html5
Desktop app based on node js and html5Desktop app based on node js and html5
Desktop app based on node js and html5

Ян Жабин (Provectus)

node jshtml5provectus
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...

Продукт XML2Selenium - это расширяемая, плагинная платформа для создания и управления автоматизированными тестами на основе технологии Java. XML2Selenium имеет интеграцию с JUnit, работает поверх Selenium (это изменяемо). XML2Selenim позволяет создавать автоматизированные тесты в простом и понятном обычному (без навыков программирования) QA инженеру формате. XML2Selenium позволяет также управлять всеми стадиями работы с автоматизированными тестами, начиная от стадии создания и заканчивая управлением тестами. Главными конкурентными преимуществами являются - низкая стоимость вхождения. Начинающие автоматизаторы, и даже QA инженеры без навыков программирования создают качественные тесты, а значит легко поддерживаемые, легко изменяемые, с использованием DDT (Data Driven Testing) подходов, что увеличивает повторно-используемость тестов - встроенные возможности структуризации тестов по папкам и файлам, а также по тегам, что позволяет качественно отобразить документацию на тесты. Внедряя эту платформу, вы автоматически улучшаете свои процессы управления тестами - XML2Selenium - это плагинная, расширяемая платформа, позволяющая кастомизировать процессы под ваши нужды, создать новые плагины, добавить интеграцию с нужными системами, и многое другое - все повторно-используемые части (инклюды, плагины) могут помещаться в репозитории, откуда ими могут пользоваться QA инженеры с других проектов компании, тем самым распространяется опыт и знания в области автоматизации - XML2Selenium имеет широкий спектр полезных свойств в области автоматизации, таких как поддержка создания видео, снепшотов и скриншотов страниц, Groovy и JS скриптинга, поддержки объектно-ориентированного программирования на XML и многих других Традиционно многие компании не инвестируют много в QA инженеров, при этом сложность продуктов и количество Use Cases растёт, и компании утыкаются в барьер, когда архитектура тестов становится сравнительно такого же уровня, как и архитектура приложения. Это же касается и автоматизации тестирования. Ключевыми проблемами становятся: - вопросы поддержки и тестирования многих инсталяций продукта на стороне заказчика - вопросы тестирования нескольких версий (бренчей) одного и того же продукта - повторн

testmanagementjazzteamjava test automation
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложений
rit2008
Спецификация Java-портлетов  JSR  286 Inter-Portlet Communication (взаимодействие между портлетами) AJAX, JSON  F ilters and listeners WASP
Любой портал, который заявляет, что он потдерживает  JSR  286 или  JSR 168 , должен это поддерживать.
Сайты-визитнки Корпоративные порталы Сайты с  CMS Интернет магазины Интернет банки, Социальные сети Для чего нужен  Liferay
Сайты-визитнки Корпоративные порталы Сайты с  CMS Интернет магазины Интернет банки, Социальные сети Для чего нужен  Liferay

Recommended for you

1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET
rit2008
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)

React(JS) — это современная библиотека для разработки UI компонентов от Facebook, по праву считающаяся самой трендовой технологией среди JavaScript разработчиков на 2015/16 год. Но каким образом React стал настолько популярен в среде разработчиков, учитывая что библиотека покрывает только View из необходимого минимума MVC архитектуры? Ответ таится в экосистеме технологий, в рамках которой нам открываются совершенно новые способы разработки приложений, не только для веба, но и нативных платформ с родным UI (iOS, Android, Win 10, OSx). Роберт расскажет, почему огромная популярность React более чем заслужена, и почему это не "очередной фреймворк", а чуть ли не самое большое изменение в JavaScript разработке за последние годы.

fc 2016rit 2016
Liferay_2012
Liferay_2012Liferay_2012
Liferay_2012
liferay
Большой  BOX-IN: User management  Social networking  Security Integrations Reports Workflow features +
Разработки портлетов на разных языках ( Ruby, php,…) Open-Source Java ( есть платная версия) ESB Liferay Хороший код Обновляется It's easy to use +
Мало документации Сложно начать Тяжёлая разработка Уязвимости и баги (а где их нет ? ) -
Другие порталы 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

Recommended for you

Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practices

Summary: Presentation on open source testing frameworks (improved version, more focus on real project example) at Software Engineering Forum 2009 (SEF-1) conference by Aliaksandr Ikhelis. Sponte framework developer and owner is Stanislaw Wozniak, Expedia Limited, UK. Sponte project homepage: http://rubyforge.org/projects/sponte/; http://github.com/swozniak/sponte/tree/master

sponteconferenceautomation
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов

Александр Ихелис, Epam Systems, Минск, Беларусь

forumengineeringsoftware
How Payment Cards Really Work?
How Payment Cards Really Work?How Payment Cards Really Work?
How Payment Cards Really Work?

This talk is an introduction about technical aspects of how payment cards function, what technical protocols are involved and what are implementation complexities in a typical payments project. You will learn about concepts like Authorisation and Clearing, Tokenization and know about novelties in the payment world, which will affect consumers in the nearest future.

paymentsiso8583devclub
Примеры портлетов под  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
 

More Related Content

Similar to Liferay

Catalyst – MVC framework на Perl (RIT 2008)
Catalyst – MVC framework на Perl  (RIT 2008)Catalyst – MVC framework на Perl  (RIT 2008)
Catalyst – MVC framework на Perl (RIT 2008)
Sergey Skvortsov
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
IT-Доминанта
 
RESTful Architechture (Highload++ 2008)
RESTful Architechture (Highload++ 2008)RESTful Architechture (Highload++ 2008)
RESTful Architechture (Highload++ 2008)
Sergey Skvortsov
 
!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture
Ontico
 
Wild wild web. html5 era
Wild wild web. html5 eraWild wild web. html5 era
Wild wild web. html5 era
.toster
 
Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)
Василий Савунов
 
JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.
Igor Shkulipa
 
Meet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis BosakMeet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis Bosak
Amasty
 
Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложении
Voximplant
 
Desktop app based on node js and html5
Desktop app based on node js and html5Desktop app based on node js and html5
Desktop app based on node js and html5
Provectus
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...
jazzteam
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложений
Media Gorod
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET
Media Gorod
 
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
Ontico
 
Liferay_2012
Liferay_2012Liferay_2012
Liferay_2012
iopent
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practices
Aliaksandr Ikhelis
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
SQALab
 

Similar to Liferay (20)

Catalyst – MVC framework на Perl (RIT 2008)
Catalyst – MVC framework на Perl  (RIT 2008)Catalyst – MVC framework на Perl  (RIT 2008)
Catalyst – MVC framework на Perl (RIT 2008)
 
Экскурс в мир WEB разработки
Экскурс в мир WEB разработкиЭкскурс в мир WEB разработки
Экскурс в мир WEB разработки
 
Yii rit 2010
Yii rit 2010Yii rit 2010
Yii rit 2010
 
The Best Portlet
The Best PortletThe Best Portlet
The Best Portlet
 
RESTful Architechture (Highload++ 2008)
RESTful Architechture (Highload++ 2008)RESTful Architechture (Highload++ 2008)
RESTful Architechture (Highload++ 2008)
 
!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture!2hl++2008 Restful Architechture
!2hl++2008 Restful Architechture
 
Wild wild web. html5 era
Wild wild web. html5 eraWild wild web. html5 era
Wild wild web. html5 era
 
Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)Что вас ждет на пути реализации Soa (Битрикс отступает)
Что вас ждет на пути реализации Soa (Битрикс отступает)
 
JavaScript Базовый. Занятие 09.
JavaScript Базовый. Занятие 09.JavaScript ��азовый. Занятие 09.
JavaScript Базовый. Занятие 09.
 
Meet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis BosakMeet Magento Belarus 2015: Denis Bosak
Meet Magento Belarus 2015: Denis Bosak
 
Telerik Web aii
Telerik Web aiiTelerik Web aii
Telerik Web aii
 
Видеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложенииВидеозвонки и шаринг экрана в мобильном приложении
Видеозвонки и шаринг экрана в мобильном приложении
 
Desktop app based on node js and html5
Desktop app based on node js and html5Desktop app based on node js and html5
Desktop app based on node js and html5
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...
 
Проверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложенийПроверено и работает. Инструменты Oracle для разработки веб приложений
Проверено и работает. Инструменты Oracle для разработки веб приложений
 
1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET1С-Битрикс: Управление сайтом Версия .NET
1С-Битрикс: Управление сайтом Версия .NET
 
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
React новая эра фронтенд разработки / Роберт Харитонов (Liberty Global)
 
Liferay_2012
Liferay_2012Liferay_2012
Liferay_2012
 
Open Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practicesOpen Source Testing Framework: real project example and best practices
Open Source Testing Framework: real project example and best practices
 
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментовРеализация тестового фреймворка на основе OPEN-SOURCE инструментов
Реализация тестового фреймворка на основе OPEN-SOURCE инструментов
 

More from Dmitry Buzdin

How Payment Cards Really Work?
How Payment Cards Really Work?How Payment Cards Really Work?
How Payment Cards Really Work?
Dmitry Buzdin
 
Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?
Dmitry Buzdin
 
How to grow your own Microservice?
How to grow your own Microservice?How to grow your own Microservice?
How to grow your own Microservice?
Dmitry Buzdin
 
How to Build Your Own Test Automation Framework?
How to Build Your Own Test Automation Framework?How to Build Your Own Test Automation Framework?
How to Build Your Own Test Automation Framework?
Dmitry Buzdin
 
Delivery Pipeline for Windows Machines
Delivery Pipeline for Windows MachinesDelivery Pipeline for Windows Machines
Delivery Pipeline for Windows Machines
Dmitry Buzdin
 
Big Data Processing Using Hadoop Infrastructure
Big Data Processing Using Hadoop InfrastructureBig Data Processing Using Hadoop Infrastructure
Big Data Processing Using Hadoop Infrastructure
Dmitry Buzdin
 
JOOQ and Flyway
JOOQ and FlywayJOOQ and Flyway
JOOQ and Flyway
Dmitry Buzdin
 
Developing Useful APIs
Developing Useful APIsDeveloping Useful APIs
Developing Useful APIs
Dmitry Buzdin
 
Whats New in Java 8
Whats New in Java 8Whats New in Java 8
Whats New in Java 8
Dmitry Buzdin
 
Архитектура Ленты на Одноклассниках
Архитектура Ленты на ОдноклассникахАрхитектура Ленты на Одноклассниках
Архитектура Ленты на Одноклассниках
Dmitry Buzdin
 
Dart Workshop
Dart WorkshopDart Workshop
Dart Workshop
Dmitry Buzdin
 
Riding Redis @ask.fm
Riding Redis @ask.fmRiding Redis @ask.fm
Riding Redis @ask.fm
Dmitry Buzdin
 
Rubylight JUG Contest Results Part II
Rubylight JUG Contest Results Part IIRubylight JUG Contest Results Part II
Rubylight JUG Contest Results Part II
Dmitry Buzdin
 
Rubylight Pattern-Matching Solutions
Rubylight Pattern-Matching SolutionsRubylight Pattern-Matching Solutions
Rubylight Pattern-Matching Solutions
Dmitry Buzdin
 
Refactoring to Macros with Clojure
Refactoring to Macros with ClojureRefactoring to Macros with Clojure
Refactoring to Macros with Clojure
Dmitry Buzdin
 
Poor Man's Functional Programming
Poor Man's Functional ProgrammingPoor Man's Functional Programming
Poor Man's Functional Programming
Dmitry Buzdin
 
Rubylight programming contest
Rubylight programming contestRubylight programming contest
Rubylight programming contest
Dmitry Buzdin
 
Continuous Delivery
Continuous Delivery Continuous Delivery
Continuous Delivery
Dmitry Buzdin
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
Dmitry Buzdin
 
Thread Dump Analysis
Thread Dump AnalysisThread Dump Analysis
Thread Dump Analysis
Dmitry Buzdin
 

More from Dmitry Buzdin (20)

How Payment Cards Really Work?
How Payment Cards Really Work?How Payment Cards Really Work?
How Payment Cards Really Work?
 
Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?Как построить свой фреймворк для автотестов?
Как построить свой фреймворк для автотестов?
 
How to grow your own Microservice?
How to grow your own Microservice?How to grow your own Microservice?
How to grow your own Microservice?
 
How to Build Your Own Test Automation Framework?
How to Build Your Own Test Automation Framework?How to Build Your Own Test Automation Framework?
How to Build Your Own Test Automation Framework?
 
Delivery Pipeline for Windows Machines
Delivery Pipeline for Windows MachinesDelivery Pipeline for Windows Machines
Delivery Pipeline for Windows Machines
 
Big Data Processing Using Hadoop Infrastructure
Big Data Processing Using Hadoop InfrastructureBig Data Processing Using Hadoop Infrastructure
Big Data Processing Using Hadoop Infrastructure
 
JOOQ and Flyway
JOOQ and FlywayJOOQ and Flyway
JOOQ and Flyway
 
Developing Useful APIs
Developing Useful APIsDeveloping Useful APIs
Developing Useful APIs
 
Whats New in Java 8
Whats New in Java 8Whats New in Java 8
Whats New in Java 8
 
Архитектура Ленты на Одноклассниках
Архитектура Ленты на ОдноклассникахАрхитектура Ленты на Одноклассниках
Архитектура Ленты на Одноклассниках
 
Dart Workshop
Dart WorkshopDart Workshop
Dart Workshop
 
Riding Redis @ask.fm
Riding Redis @ask.fmRiding Redis @ask.fm
Riding Redis @ask.fm
 
Rubylight JUG Contest Results Part II
Rubylight JUG Contest Results Part IIRubylight JUG Contest Results Part II
Rubylight JUG Contest Results Part II
 
Rubylight Pattern-Matching Solutions
Rubylight Pattern-Matching SolutionsRubylight Pattern-Matching Solutions
Rubylight Pattern-Matching Solutions
 
Refactoring to Macros with Clojure
Refactoring to Macros with ClojureRefactoring to Macros with Clojure
Refactoring to Macros with Clojure
 
Poor Man's Functional Programming
Poor Man's Functional ProgrammingPoor Man's Functional Programming
Poor Man's Functional Programming
 
Rubylight programming contest
Rubylight programming contestRubylight programming contest
Rubylight programming contest
 
Continuous Delivery
Continuous Delivery Continuous Delivery
Continuous Delivery
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Thread Dump Analysis
Thread Dump AnalysisThread Dump Analysis
Thread Dump Analysis
 

Liferay

  • 1. Знакомство с LIFERAY Дмитрий Гаврилов
  • 2. Знакомство с Liferay Что такое Liferay Portal Что такое Portlet Для чего нужен Liferay Плюсы и минусы Liferay
  • 3. It's a WebSite... It's a Portal... It's a CMS... It is Liferay !
  • 4.  
  • 5.  
  • 6.  
  • 7. Что такое портлет ? Портлет — подключаемый, сменный компонент пользовательского интерфейса веб-портала (элемент веб-страницы).
  • 8. Похоже на сервлет ! Управляются специальным контейнером Генерируют динамический контент Жизненный цикл управляется контейнером Клиет парадигма request/response Непохоже на сервлет ! Фрагменты разметки. Не могут быть адресованы напрямую. Не могут генерировать независимый контент. Дополнительный функционал (моды, и.т.д)
  • 9.  
  • 10.  
  • 12. 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
  • 13. L iferay-portlet.xml <liferay-portlet-app> <portlet> <portlet-name>HellowWourld</portlet-name> …………… . …………… . </ liferay-portlet-app> L iferay-display.xml <liferay-portlet-app> ... <role-mapper> <role-name>user</role-name> <role-link>User</role-link> </role-mapper> </ liferay-portlet-app>
  • 14. public class HelloWorld extends GenericPortlet { protected void doView (RenderRequest request, RenderResponse response) throws PortletException, IOException { response.setContentType(&quot;text/html&quot;); response.getWriter().println(&quot;Hello Portlet&quot;); } }
  • 15. init(PortletConfig config) processAction(ActionRequest request, ActionResponse response) render(RenderRequest request, RenderResponse response) destroy()
  • 16. Спецификация Java-портлетов JSR 168 Поддержка MVC паттерна Моды ( состояния ) портлетов Статусы окон ( размер страницы портала и.т.д ) Packaging формат
  • 17. Спецификация Java-портлетов JSR 286 Inter-Portlet Communication (взаимодействие между портлетами) AJAX, JSON F ilters and listeners WASP
  • 18. Любой портал, который заявляет, что он потдерживает JSR 286 или JSR 168 , должен это поддерживать.
  • 19. Сайты-визитнки Корпоративные порталы Сайты с CMS Интернет магазины Интернет банки, Социальные сети Для чего нужен Liferay
  • 20. Сайты-визитнки Корпоративные порталы Сайты с CMS Интернет магазины Интернет банки, Социальные сети Для чего нужен Liferay
  • 21. Большой BOX-IN: User management Social networking Security Integrations Reports Workflow features +
  • 22. Разработки портлетов на разных языках ( Ruby, php,…) Open-Source Java ( есть платная версия) ESB Liferay Хороший код Обновляется It's easy to use +
  • 23. Мало документации Сложно начать Тяжёлая разработка Уязвимости и баги (а где их нет ? ) -
  • 24. Другие порталы 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
  • 25. Примеры портлетов под 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
  • 26.  

Editor's Notes

  1. WEB-INF/web.xml - поскольку портлет - веб приложение, нужен дескриптор развертывания для сервера. WEB-INF/portlet.xml - любой портлет должен иметь свой файл в папке /WEB-INF, который является дескриптором развертывания приложения портлета. Liferay портал имеет два специфических дескриптора развертывания, которые расширяют функционал, лежащий в portlet.xml. WEB-INF/liferay-portlet.xml - позволяет описать специфические настройки liferay WEB-INF/liferay-display.xml - позволяет настроить разрешения, настройки безопасности, роли пользователей.
  2. JBOSS