Convert to Liferay Forms!

48
Convert to Liferay Forms! Sébastien Le Marchand Freelance Technical Consultant @slemarchand MARCH 10, 2021

Transcript of Convert to Liferay Forms!

Page 1: Convert to Liferay Forms!

Convert to Liferay Forms!

Sébastien Le MarchandFreelance Technical Consultant

@slemarchand

MARCH 10, 2021

Page 2: Convert to Liferay Forms!

Sébastien Le Marchand

13 years of experience on Liferay (since version 4.3 in 2007)

Co-organizer of meetup Liferay France User Group

@slemarchand linkedin.com/in/slemarchand

Freelance Technical Consultant

Page 3: Convert to Liferay Forms!

Agenda

(Re-)discovering Liferay Forms

The need to convert

Liferay Forms: behind the scenes

Tools we made

Next steps for our tools?

Forms: Should I Stay or Should I go?

Page 4: Convert to Liferay Forms!

Custom tools and feedback

presented in this session come

from real-world projects

performed by...

Page 5: Convert to Liferay Forms!

Liferay at the core of each project

Official Liferay training partner

An accomplished team that supports you towards autonomy

www.nysis.com

Consulting Expertise Training

Page 6: Convert to Liferay Forms!

(Re-)discovering Liferay Forms

Page 7: Convert to Liferay Forms!

LIFERAY FORMS: THE BIG PICTURE

Inspired from Google FormsFind everything you love about Google Forms

Keep full control on your dataDon’t let any SaaS vendor control your data… A kind of “Signal” of Forms 😉

Deeply integrated into LiferayRe-use your Liferay security model and seamlessly embed forms into your websites

ExtensibleThanks to OSGi, you can add any exotic feature you need… Sky is the limit!

Page 8: Convert to Liferay Forms!

Give direct control to business users

Liferay Forms is a real game changer

Reduce delay Reduce costs

Page 9: Convert to Liferay Forms!

History of forms in Liferay

7.2 7.37.0 7.16.26.1

Liferay Forms

Liferay Web Form

Age of maturity

Available separately on Marketplace for EE

Page 10: Convert to Liferay Forms!

Defining form

01

Page 11: Convert to Liferay Forms!

End users fill form instances

02

Page 12: Convert to Liferay Forms!

Analyze results

03

Page 13: Convert to Liferay Forms!

Advanced field types

Page 14: Convert to Liferay Forms!

And much more besides...▪ Advanced behavior rules on fields

▪ Repeatable fields

▪ Flexible display layout▪ Pages▪ Fields width▪ Fields position (rows and columns)▪ Fields group

▪ Customizable success page

Page 16: Convert to Liferay Forms!

The need to convert

Page 17: Convert to Liferay Forms!

How to take advantage of Liferay Forms for a great number of “legacy” forms?

Page 18: Convert to Liferay Forms!

Use Case #1

7.2 7.37.0 7.16.26.1

Liferay Forms

Liferay Web Form

Age of maturity

Available separately on Marketplace for EE

Page 19: Convert to Liferay Forms!

Upgrade Liferay 6.1 → 7.2

A significant amount of Web From portlets:

▪ 47 forms▪ 40 fields on the biggest form▪ 6 fields by form on average

Web Form no more available for Liferay 7.2

No upgrade process provided by Liferay

Web Form : our historical context

Page 20: Convert to Liferay Forms!

Use Case #2

... ...

Page 21: Convert to Liferay Forms!

Upgrade { other technologies → Liferay 7.2 }

A Liferay portal is often an opportunity to replace many old forgotten small apps of the Information System!

Any techno can be concerned:

▪ PHP▪ CGI / Perl▪ ColdFusion▪ JSP▪ ASP▪ ...

Third party technologies: infinity of contexts !

Page 22: Convert to Liferay Forms!
Page 23: Convert to Liferay Forms!

Liferay Forms: behind the scenes

Page 24: Convert to Liferay Forms!
Page 25: Convert to Liferay Forms!

Server side ...

...

Page 26: Convert to Liferay Forms!

serializedFormBuilderContext :+ 4 000 lines of JSON

Page 27: Convert to Liferay Forms!
Page 28: Convert to Liferay Forms!

Tools we made

Page 29: Convert to Liferay Forms!
Page 30: Convert to Liferay Forms!
Page 31: Convert to Liferay Forms!

GENERAL PIECE OF ADVICE

Consider to encapsulate and adapt Liferay native API which not fit the context of your project.

Page 32: Convert to Liferay Forms!

nysis-ddm-form-generator

Liferay

nysis-web-form-converterWeb Form Portlets

DDM Form InstancesDDM Form Portlets

Use Case #1

UPGRADE PROCESS

SIMPLIFIED API

Page 33: Convert to Liferay Forms!

▪ End-to-end automated

▪ No manual operations required to get ready-to-go forms *

Converting Web Forms 6.x

* : Unless there is some custom JS validator on the web forms

Page 34: Convert to Liferay Forms!

Liferay 6.1 Liferay 7.2

Page 35: Convert to Liferay Forms!

Use Case #2

nysis-ddm-form-generator

Liferay

nysis-json-form-converter

DDM Form Instances

SIMPLIFIED API

JSON

htmlform2jsonSCRIPT NODE.JS

Static HTML

Web crawler

Web Application

Page 36: Convert to Liferay Forms!

▪ HTML extraction prevent server-side technology dependency and so allow any server-side technology

▪ Only semi-automated: some forms definitions must be completed using GUI to be fully compliant to the original form

▪ JSON pivot format open all possibilities for future upstream of the conversion chain, for example to deal with non-web technologies

Any website → Liferay Forms: conversion chain

Static HTML

JSON

Liferay Forms

Web App / Website

Page 37: Convert to Liferay Forms!

Get more information, enroll as tester and

share your feedback:

forms.nysis.com

Page 38: Convert to Liferay Forms!

Next steps for our tools?

Page 39: Convert to Liferay Forms!

Transverse improvementsTransverse improvements in the roadmap of nysis-ddm-form-generator :

▪ Additional field type support▪ File upload ▪ Number▪ Date

▪ Form layouting support▪ Multi pages▪ Advanced field positioning

▪ Field advanced properties support▪ Placeholder▪ Data provider▪ ...

With the “keep it simple” spirit

→ All new features are optional and

preserve simple format for basic

features

Page 40: Convert to Liferay Forms!

New converters consideredUpstream of nysis-json-form-converter or nysis-ddm-form-generator, we consider new converters to take some new kind of input :

▪ Source code JSF, Spring MVC or JSP + Liferay tags to increase automation compared to conversion from final HTML

▪ Forms from PDF files

▪ SaaS forms like Google Forms or Typeform

▪ Prototypes form tools like Figma, Axure, Balsamiq

According to your

expectations…

Talk with us!

👇

forms.nysis.com

Page 41: Convert to Liferay Forms!

Forms: Should I Stay or Should I Go

Page 42: Convert to Liferay Forms!

Liferay Forms

Custom development

Page 43: Convert to Liferay Forms!

Aligned context

▪ Short delivery time required▪ High frequency small changes▪ Low budget▪ OOTB features match requirements

How to evaluate relevance of Liferay Forms?

Non-aligned context

▪ Certified QA endorsement ▪ Need for changes history▪ Very-high business complexity▪ Business users don’t want use the form

builder UI

It’s my personal subjective

decision grid

All criteria should be evaluated and weighted according each project’s context : Here is the challenge!

Page 44: Convert to Liferay Forms!

Maybe you need bigger size for no-code/low-code ?

Forms

App Builder

Page 45: Convert to Liferay Forms!

https://learn.liferay.com/dxp/7.x/en/developing-applications/developing-low-code-applications/app-builder-overview.html

Page 46: Convert to Liferay Forms!

What did we learn?

Page 47: Convert to Liferay Forms!

Take away

Consider Liferay Forms for your projects

Evaluate Liferay Forms relevance in the context

Consider automated conversion opportunities

Test our converters: forms.nysis.com

Page 48: Convert to Liferay Forms!

Thanks !

Sébastien Le [email protected]@slemarchand