convert to liferay forms!
TRANSCRIPT
![Page 1: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/1.jpg)
Convert to Liferay Forms!
Sébastien Le MarchandFreelance Technical Consultant
@slemarchand
MARCH 10, 2021
![Page 2: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/2.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/3.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/4.jpg)
Custom tools and feedback
presented in this session come
from real-world projects
performed by...
![Page 5: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/5.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/6.jpg)
(Re-)discovering Liferay Forms
![Page 7: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/7.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/8.jpg)
Give direct control to business users
Liferay Forms is a real game changer
Reduce delay Reduce costs
€
![Page 9: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/9.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/10.jpg)
Defining form
01
![Page 11: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/11.jpg)
End users fill form instances
02
![Page 12: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/12.jpg)
Analyze results
03
![Page 13: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/13.jpg)
Advanced field types
![Page 14: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/14.jpg)
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 15: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/15.jpg)
Custom development
https://help.liferay.com/hc/en-us/articles/360029030711-Introduction-to-Liferay-Forms
StorageAdapter DDMFormFieldType
DDMFormFieldTypeSettings
DDMFormFieldTemplateContextContributor
DDMFormFieldValueValidator
Custom Storage Backend
Custom Field Type
Customvalidation rules
+ Service override
+ MVC Command override
![Page 16: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/16.jpg)
The need to convert
![Page 17: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/17.jpg)
How to take advantage of Liferay Forms for a great number of “legacy” forms?
![Page 18: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/18.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/19.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/20.jpg)
Use Case #2
... ...
![Page 21: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/21.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/22.jpg)
![Page 23: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/23.jpg)
Liferay Forms: behind the scenes
![Page 24: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/24.jpg)
![Page 25: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/25.jpg)
Server side ...
...
![Page 26: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/26.jpg)
serializedFormBuilderContext :+ 4 000 lines of JSON
![Page 27: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/27.jpg)
![Page 28: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/28.jpg)
Tools we made
![Page 29: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/29.jpg)
![Page 30: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/30.jpg)
![Page 31: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/31.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/32.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/33.jpg)
▪ 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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/34.jpg)
Liferay 6.1 Liferay 7.2
![Page 35: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/35.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/36.jpg)
▪ 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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/37.jpg)
Get more information, enroll as tester and
share your feedback:
forms.nysis.com
![Page 38: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/38.jpg)
Next steps for our tools?
![Page 39: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/39.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/40.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/41.jpg)
Forms: Should I Stay or Should I Go
![Page 42: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/42.jpg)
Liferay Forms
Custom development
![Page 43: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/43.jpg)
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!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/44.jpg)
Maybe you need bigger size for no-code/low-code ?
Forms
App Builder
![Page 45: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/45.jpg)
https://learn.liferay.com/dxp/7.x/en/developing-applications/developing-low-code-applications/app-builder-overview.html
![Page 46: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/46.jpg)
What did we learn?
![Page 47: Convert to Liferay Forms!](https://reader035.vdocument.in/reader035/viewer/2022071405/62ce4f726618000032475153/html5/thumbnails/47.jpg)
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