upgrade your business applications to liferay dxp

24
CIGNEX Datamatics Confidential www.cignex.com Upgrade your Business Applications to Liferay DXP Name: Muhammed Shakir Title: Head – Portals and Collaboration at CIGNEX Datamatics

Upload: cignex-datamatics

Post on 22-Jan-2018

595 views

Category:

Technology


8 download

TRANSCRIPT

Page 1: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

Upgrade your Business Applications to Liferay DXP

Name: Muhammed Shakir

Title: Head – Portals and Collaboration

at CIGNEX Datamatics

Page 2: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

Muhammed Shakir - Head - Portals and Collaboration, CIGNEX Datamatics

2

About the Presenter

Muhammed Shakir has over 20 years of experience in various technologies. Since 2008, Shakir has been actively working on Liferay and has conducted various training programs. At CIGNEX Datamatics, he nurtures and facilitates the portals and collaboration initiative which plays an active role in Delivery, R&D, Sales and Presales support.

Page 3: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

• Why Upgrade?

• Challenges in Upgrade

• Portal Types

• What to Analyze

• The Upgrade Process

3

Agenda

Page 4: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 4

New Features in Liferay DXP

Omnichannel Campaign Manager

Single Customer View

Mobile App Studio

Modular/OSGi New Liferay

Experience Language Enterprise

Search

Alloy Editor

Connected Services

Image & Media Selector

Page 5: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 5

Typical Challenges during upgrade

Maturing to a Platform from a Portal

With features like Campaign Manager, Single Customer View, Analytics, Connected Services, Liferay is matured beyond a conventional portal platform

Business Continuity

Coexistence of existing applications.

Data and Performance Concerns

Planning the Upgrade Process

Solution Expertise

Functional & Technical skills

Page 6: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 6

About Different Types of Portals

Low

High

Low High

Cu

sto

m C

od

e (

Cu

sto

m P

ort

lets

)

Customization of OOTB Features

Upgrade Efforts

Low

Medium

Medium

High

Page 7: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

• Multitenancy

– Is the portal multi-tenant?

– Are portal instances created on the fly for each tenant?

• Content Structure (In Brief)

– How community based sites are created?

– Are these sites created on the fly?

– If organizations are at work then are sites created at Organization level?

– Does any portal instance or site have their own site url?

• Forms, Polls, & Data Lists

– Are Forms, Polls and Data Lists used?

• Display Templates

– If the portal is built on Liferay 6.2 then, are there any display templates for Blogs?

7

What You Should Analyze?

Content Architecture

Portal Structure and

Customization

Deployment Architecture

Implementation

Architecture

Page 8: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

• Portal Management

– Which database is being used?

• Authentication

– Are you using LDAP?

– Is the portal integrated with OOTB supports SSO? If yes, then which one?

• Authorization – Are custom roles created?

• Workflow

– Are you using workflow on any asset? State the asset over which workflow is used.

• Look and Feel

– How many custom themes are developed? What is the level of customization done?

– Is the current theme responsive?

• Search

– Is Solr used? If yes, is it clustered?

– Are you using faceted search?

8

What You Should Analyze?

Portal Structure and

Customization

Deployment Architecture

Implementation

Architecture

Content Architecture

Portal Structure & Customization

Page 9: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

• Which product is used as forward proxy?

• How many QA instances are you using?

• What is the configuration of the hardware instances hosting Liferay bundles?

• Is there containerization at work?

• Which DevOps tools are used to manage the environment?

• Are you using Liferay’s staging feature?

• Are you using the CI tool?

• Is DR site provisioned? If yes, describe the same

• Is performance of your portal to the expectations of the stakeholders?

9

What You Should Analyze?

Portal Structure and

Customization

Deployment Architecture

Implementation

Architecture

Content Architecture

Deployment Architecture

Page 10: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

• Hooks

– Are Liferay API(s) customized using Service Wrappers in Hooks projects?

– Are any custom struts action written?

– Any model listeners written? If yes, then describe the implementation

• Ext – How many classes are overridden in Ext?

• Modularity Structure

– # of projects, their dependencies, are projects Maven or Ant based?

• Design Level and Code Review

– Business Level Code Review

– UI Specific Code Review

– Web Tier

– Business Services

– Usage of API(s)

– Custom Authorization

– Indexing

10

What You Should Analyze?

Portal Structure and

Customization

Deployment Architecture

Implementation

Architecture

Content Architecture

Implementation Architecture

Page 11: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 11

What to Upgrade

Database

Content (Web Content, Document & Media,

Blogs, Message Board, Wiki etc.)

Custom Theme

Custom Code (EXT , Hooks, Plugin projects, Themes, Elastic Search Server, Rebuild Indexes, Deployment

Environment and more)

Page 12: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

12

Determining the Steps to Upgrade

Liferay Ver (>=6.0.12?)

Migrate to Docs and

Media

Upgrade to Liferay 6.2

Run Upgrade Process

Upgrade Plugins

YES

NO

Upgrade to DXP

Page 13: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

• Large applications with many lines of code

• Plugin with reusable logic – converting applications to modules where you are using the same business logic across multiple projects

• If your application uses multiple versions of the same library in an environment. Module versions, removes the ambiguity in troubleshooting caused by the class loader

• If you want to retain the JSR-168/286 compatibility to deploy on another portlet container

• You’re using a complex web framework that is heavily tied to the Java EE programming model.

• If your plugin interacts with the app server, then module based applications might not be portable with the app server.

• If your application’s original intent is to have a limited-lifetime?

13

Planning your Plugin Upgrades

Approach 1 Adapting Liferay 6.2 traditional plugins

to Liferay DXP API

Approach 2 Converting traditional plugins to OSGi

modules

When to go with Approach 1

When to go with Approach 2

Page 14: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 14

Approach 1 – Leveraging Plugin SDK for Migration

Steps to Follow

• Setup Liferay DXP Plugin SDK

• Upgrading code to Liferay DXP

API

• Identifying errors in import

line using Eclipse

• Fix issues related to changes

in Service Builder

Liferay Plugin Project

Plugin Type - Portlet

service.xml

portlet.xml

liferay-portlet.xml

liferay-display.xml

Page 15: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 15

Approach 2 – Converting Traditional Plugins to OSGi Modules

Steps to Follow

• Review Environment

• Upgrade the service layer

• Implement the portlet

Liferay Module Project

Service Builder

Parent

API

Service

(Service.xml)

MVC Portlet (Web Component)

Declarative Services

Page 16: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 16

Upgrading Theme Plugins

Blade CLI

Upgrade Single Theme

blade migrateTheme

[Theme_name]

Migrate all themes

blade migrateTheme -a

• Convert CSS styles from Bootstrap 2 to Bootstrap 3 (npm install -g convert-bootstrap-2-to-3)

• Rename all your SASS files from *.css to *.sass • Update the file by running - bs3 path/to/file

Page 17: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 17

The Upgrade Process

Legacy Properties Configuring Docs &

Media File Store Install the New Liferay Version

Disable Indexing during Upgrade

Optional: Upgrading Modules

Individually

Upgrading your Installation Upgrading your Database

Page 18: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 18

Running the Upgrade

The upgrade requires configuration before it can run. This configuration can be done at runtime, or you can pre-configure it in three files

app-server.properties:

portal-upgrade-datasource.properties:

portal-upgrade-ext.properties:

Properties that define for the tool the server’s location and libraries

Properties for connecting to the database that will be upgraded

Contains the rest of the Liferay properties you need to perform the upgrade

Page 19: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com

Liferay 6.x Liferay DXP

Maven or Ant based Portlet project containing one or more portlets

MVC Portlet Module project with no portlets

Service Builder Plugin SDK project which contains one or more service.xml.

Service Builder Module project…………

Liferay Module JSP hook plugin project Fragment module Liferay Core JSP hook plugin project CustomJSPBag component class (i) Portlet Struts action.

(ii) Pre/Post Action event hook plugin project.

(i) StrutsPortletAction component module

Implementing StrutsPortletAction.class.

(ii)Login Pre Action service.

Model Listener hook plugin project. Model Listener component with service type ModelListener.class .

IndexerPostProcessor hook plugin project. IndexPostProcessors component with service type IndexPostProcessors.class.

Service wrapper hook plugin project. Service Wrapper component with service type ServiceWrapper.class.

Module Language Properties hook plugin project. Service component with service type ResourceBundleLoader.class.

Core/Liferay’s Language Key Properties hook plugin project. Service component with service type ResourceBundle.class.

19

Component Mapping

Page 20: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 20

Adding New Component in DXP

Page 21: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 21

Go Live Steps

Migration of data (1/2) Move old data to new system and

compare diff. between new and old systems

Quality Assurance Functional Testing and

Validation

Create Configuration and Setup Guide

Stop Updates on Legacy System

No CRUD operations now that you have upgraded the system

Migration of data (2/2) Update data that might have been uploaded on legacy system during

QA

Final Validation Perform a quick round of

functional testing on the new setup before going live

Switch Move to the upgraded System

Upgrade Move from your local environment

to production

Page 22: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 22

CIGNEX Datamatics - Established in 2000, USA

12+ Open Source Framework/ Components #1 Pure Play Open

Source Services Company

15 Open Source Books Authored

Global Offices 13+ Business Engagement Platforms 3+

Open Source Community Contributions 5000+ Open Source

Implementations 500+ Open Source Consultants 500+

Portals, Content & Collaboration Portals Enterprise Application Integration e-Commerce Robotic Process Automation

Enterprise Content Management Document Management Web Content Management Learning/Knowledge Management Imaging and Scanning - OCR/Digitization Enterprise Search Business Process Management

Big Data Analytics Customer 360 Degree View Social Listening & Engagement Enterprise Search Risk & Fraud Detection Internet of Things

Open Source Solutions

Business Engagement Platforms

Page 23: Upgrade Your Business Applications to Liferay DXP

CIGNEX Datamatics Confidential www.cignex.com 23

For Your Extended Reading on this Topic

Liferay Portal Upgrade Cookbook Author: Muhammed Shakir, Rajesh Rathod, Vishal Rangras

Your simple and easy guide to help you travel the much contemplated upgrade journey

REQUEST A COPY NOW!!