This website uses cookies to ensure you get the best experience on our website.

Skip to content
LOGO
  • Company

    About IGNEK

    Learn about our story and our mission.

    Careers

    We're hiring!

    We always looking for talented peoples. Join our team!

    Blogs

    The latest industry news, updates and info.

    Case Studies

    Take a closer look at the projects we've delivered

    Webinar

    Watch our latest organized webinar

    Get in touch with our HR team

    • hr@insights.ignek.com
    • +91 93284 95160
    • Ahmedabad, Gujarat, India – 382470
  • Services

    Enterprise Portal Development

    Custom Enterprise Portal Development for flawless Solutions

    Dedicated Development Team

    Expand Teams, Optimize Development with Our Expertise

    Back-end Development

    Empowering your digital presence with robust backend development expertise

    Front-end Development

    Crafting engaging user experiences through expert frontend development

    Digital Transformation

    Embrace digital transformation by modernizing process

    SaaS Development

    Transform your business with SaaS Innovative Solutions

    Technologies

    Liferay Services

    Development & Customization

    Theme

    Upgradation

    Migration

    Proof of Concept

    Performance Tunning

    Architecture

    Support & Maintenance

    E-commerce

    Expert Advice

    React Services

    Enterprise Development

    Custom Application

    Single Page Application

    Architecture

    API Integration

    Migration

    Consulting

    Maintenance & Support

    Spring Boot Services

    Web Service

    MVC Web Development

    API Integration

    Security

    Migration

    Microservices

    Support & Maintenance

    AEM Services

    Consulting Service

    Site Development

    Migration & Upgradation

    Integration

    Maintenance & Support

    Custom Solutions

    Content Management

    Team Augementation

  • Solution

    Ready for digital excellence

    In our rapidly evolving world, businesses are always on the lookout for fresh ways to improve their operations and connect with their audiences.

    Contact US

    Solutions

    SaaS : Software As A Service

    Transforming industries through cutting edge SaaS solutions.

    Customer Portal : Boost Business Productivity

    Streamline operations and enhance productivity with our Customer Portal solution.

    Liferay Based Intranet Portal

    Internal portal for company communication, collaboration and resources

    Integration

    Matomo Integration with Liferay

    Integrate Matomo to enable user interactions seamlessly.

    Microsoft Teams integration with Liferay

    Integrate to enable seamless collaboration, messaging within your portal.

    Jira Integration With Liferay

    Optimizes business operations by integrating with Jira.

  • Hire Us

    Liferay

    Get expert Liferay developers for seamless portal solutions.

    React JS

    Get expert ReactJS developers for dynamic web solutions.

    Web Developer

    Get custom web solutions from IGNEK's expert developers.

    Spring Boot

    Get top-notch Spring Boot developers for your project success!

    Healthcare

    Get top Healthcare Developers for cutting-edge medical software.

    MERN Stack

    Get expert MERN developers from IGNEK for custom, innovative project solutions.

    Why Hire Developers From IGNEK ?

    • Certified Developer
    • Transparent Communication
    • Flexible Hiring Modals
    • Fully Signed NDA
    • Cost Effective
    • Easy Exit Policy

    Get in touch with our Sales team

    • sales@insights.ignek.com
    • +91 6351576580
    • info@insights.ignek.com
    • Ahmedabad, Gujarat, India – 382470
SCHEDULE CALL
  • COMPANY
    • About
    • Case Studies
    • Blogs
    • Career
    • Webinar
  • SERVICES
    • Enterprise Portal Development
    • Dedicated Development Team
    • Back-end Development
    • Front-end Development
    • Digital Transformation
    • SaaS Development
  • SOLUTION
    • Customer Portal:  Boost Business Productivity
    • SaaS : Software as a Service
    • Liferay Based Employee Intranet Portal
  • TECHNOLOGY
    • Liferay Services
      • Liferay Development and Customization
      • Liferay Theme Development Service
      • Liferay DXP 7.4 Upgrade
      • Liferay Migration
      • Liferay Proof Of Concept
      • Liferay Performance Tuning
      • Liferay Architecture Design Service
      • Liferay Support And Maintenance Service
      • Liferay Ecommerce Development
      • Liferay Expert Advice
    • ReactJS Services
      • ReactJS Enterprise Application Development
      • ReactJS Custom Application Development
      • ReactJS Single Page Application Development (SPA)
      • ReactJS Applications Architecture
      • ReactJS API Integration
      • ReactJS Migration
      • ReactJS Consulting
      • ReactJS Maintenance and Support
    • Spring Boot Services
      • Spring Boot Web Development Service
      • Spring MVC Web Development
      • Spring Boot API Integration Service
      • Spring Boot Security
      • Spring Boot Migration Service
      • Spring Boot Microservices
      • Spring Boot Support & Maintenance Service
    • AEM Development Services
      • AEM Consulting Services
      • AEM Site Development
      • AEM Migration & Upgradation
      • AEM Integration Services
      • AEM Maintenance & Support
      • AEM Content Management
      • Custom AEM Solutions
      • AEM Team Augmentation
  • INTEGRATION
  • HIRE US
    • Hire Liferay Developer
    • Hire ReactJS Developer
    • Hire Spring Boot Developer
    • Hire Healthcare Developer
    • Hire Web Developer
    • Hire MERN Stack Developer
  • CONTACT US
  • Company

    About IGNEK

    Careers

    We're hiring!

    Blogs

    Case Studies

    Webinar

    Get in touch with our HR team

    • hr@insights.ignek.com
    • +91 93284 95160
    • Ahmedabad, Gujarat, India – 382470
  • Services

    Enterprise Portal Development

    Dedicated Development Team

    Back-end Development

    Front-end Development

    Digital Transformation

    SaaS Development

    Technologies

    Liferay Liferay Services
    • Development & Customization
    • Theme
    • Upgradation
    • Migration
    • Proof of Concept
    • Performance Tuning
    • Architecture
    • Support & Maintenance
    • E-commerce
    • Expert Advice
    React React Services
    • Enterprise Development
    • Custom Application
    • Single Page Application
    • Architecture
    • API Integration
    • Migration
    • Consulting
    • Maintenance & Support
    Spring Boot Spring Boot Services
    • Web Service
    • MVC Web Development
    • API Integration
    • Security
    • Migration
    • Microservices
    • Support & Maintenance
    AEM AEM Services
    • Consulting Service
    • Site Development
    • Migration & Upgradation
    • Integration
    • Maintenance & Support
    • Custom Solutions
    • Content Management
    • Team Augmentation
  • Solution

    Ready for digital excellence

    In our rapidly evolving world, businesses are always on the lookout for fresh ways to improve their operations and connect with their audiences.

    Contact US

    Solutions

    SaaS : Software As A Service

    Customer Portal : Boost Business Productivity

    Liferay Based Intranet Portal

    Integration

    Matomo Integration with Liferay

    Microsoft Teams integration with Liferay

    Jira Integration With Liferay

  • Hire Us

    Liferay

    React JS

    Web Developer

    Spring Boot

    Healthcare

    MERN Stack

    Why Hire Developers From IGNEK ?

    • Certified Developer
    • Transparent Communication
    • Flexible Hiring Modals
    • Fully Signed NDA
    • Cost Effective
    • Easy Exit Policy

    Get in touch with our Sales team

    • sales@insights.ignek.com
    • +91 6351576580
    • IGNEK
    • Ahmedabad, Gujarat, India – 382470
  • SCHEDULE CALL

Common Mistakes to Avoid in Modern Liferay Development

  • Liferay
  • February 11, 2026

Share On :

Key Mistakes You Should Avoid When Developing in Liferay

In the current Liferay environment, a ‘good’ Liferay Engineer is very much different from what they used to be a few years back. The worst error could be to trust in building monolithic Java modules having a large size and very high complexity, producing a huge technical debt, and not adopting a ‘Platform First’ approach that stays decoupled with Client Extensions and Low Code capabilities.

In Liferay, we say, develop without reinventing the wheel, and use the wheel for further innovations

Here is the complete list of mistakes you should avoid and the replacements you can use for future compatibility :

1. Backend : Stop Coding, Start Configuring

The worst thing that happens in the backend is when a solution or workaround in Java code is implemented when the same solution already exists in the platform.

Avoid : Service Builder for Custom Data Models

The Mistake : Creating service.xml, code, and SQL tables for each new business entity manually.

Solution : Liferay Objects

  • Use the OOTB Objects Engine to build the data structures. 

  • Gain automatic creation of Headless APIs, UI views, and security integration, all with no Java coding!

  • Easy to manage entity relationships using the object model builder view.

  • Can be used with form containers to create no-code/low-code forms.

Avoid : Job Schedulers

The Mistake : Using Liferay’s job scheduler inside the OSGi container.

Solution : Client Extensions

  • Move the background processing logic into a Spring Boot application.

  • Use Spring / Node Cron Jobs to make calls via Headless REST APIs.

  • In this way, you make sure that a heavy background process doesn’t bring down the JVM of your portal.

Avoid : Manual Data Import Scripts

The Mistake : Creating custom Groovy scripts or “Data Migrators” written in Java to initialize site data.

Solution : Batch Client Extensions

  • Use the Batch Client Extensions where the data is added in JSON format.

  • The batch engine in Liferay handles all the work when exporting and importing entities such as Objects or Web Contents.

  • A single deployment can set up the whole site, avoiding errors that developers used to face during the import/export.

Avoid : Model Listeners and Groovy Scripts in Workflow

The Mistake : The usage of complex Kaleo XML or Java Model Listeners to drive logic changes in data.

Solution : Object Actions and Provided Workflow Task Assignments and Actions.

  • We can set actions from the ‘Actions’ tab available in the Liferay Objects.

  • The result will be the execution of Webhooks that can invoke the external Microservices or Client Extensions to perform the logic.

  • Groovy scripts in the Kaleo task assignments are harder to maintain and may break if Liferay’s version is upgraded.

2. Frontend : From Monoliths to Micro-Frontends

The frontend development in Liferay has shifted from a ‘Theme’ mentality to a ‘Modular’ mentality.

Avoid : MVC Portlets and JSPs

The Mistake : Creating JSR-286 Portlets utilizing Server-side Rendering and old Taglibs.

Solution : Page Fragments & Custom Elements.

  • Use Fragments (HTML/CSS/JS) for content-rich UI. For complex apps, use Custom Element Client Extensions.

  • This allows the app to be built purely with React or Vue, to run as its own application off of its own server, with the app then displayed within the Liferay page as a web component.

Avoid : WAR Themes and AlloyUI

The Mistake :  Packaging the entire look and feel of the site in a single WAR file and using the deprecated Liferay JavaScript libraries.

Solution : Style Books & Theme CSS Client Extensions.

  • Style Books can be utilized to control branding, such as colors and fonts, through UI.

  • Alternatively, a Theme CSS Client Extension can be used for customized CSS, which will work regardless of version.

Avoid : Monolithic Themes for Global Assets

The Mistake : Including Favicons and JavaScript in a Weighty WAR file.

Solution : JS and Favicon Client Extensions. 

  • JS Client Extensions : Rather than putting the script tag injection inside the theme’s *portal_normal.ftl*, use the JS Client Extension. This way, you get the ability to inject analytics or global libraries across the site without having to redeploy the theme.

  • Favicon Client Extensions : You can use the new dedicated extension to deliver site-wide favicons, making it simple to change branding without having to write code.

3. Content Delivery : Beyond the Asset Publisher

Heavy customization of Asset Publisher to provide functionalities it was not intended to, is one of the mistakes that creates unmanageable code with FreeMarker.

Avoid : Heavy Customization of Asset Publisher

The Mistake : Using the Asset Publisher for all lists and writing the complex ADTs (Application Display Templates).

Solution : Collections & Search Blueprints. 

  • Collections : Utilize the “Collections” to create dynamic groups of data.

  • Collection Display Fragment : Here, the data is mapped to the user interface.

  • Search Blueprints : Utilize the visual query builder tool to design complex filters that target personalized content that transcends the typical functionality of the Asset Publisher search.

Summary Checklist : Legacy vs. Modern

Category

Legacy Mistake (Avoid)

Modern Standard (Use This)

Why?

Data Modeling

Service Builder (service.xml)

Liferay Objects

Creates tables with no code that are integrated with Liferay’s core frameworks.

Data Migration

Groovy Scripts / Custom Java

Batch Client Extensions

Bulk standard processing can be facilitated using the Batch Engine.

Custom Apps (UI)

MVC Portlet / JSPs

Custom Element CX (React/Vue)

The frontend is entirely decoupled and runs as a Web Component, ensuring it is safe and stable in upgrades.

Static Content (UI)

Web Content Display / ADTs

Page Fragments

Drag-and-drop tools enable the creation of experiences with field mapping.

Schedulers

OSGI JobScheduler

Microservice CX (Spring Boot / Node)

The critical or resource-heavy processing part is delegated to external containers through cron jobs.

Event Triggers

Model Listeners / Wrappers

Object Actions

Triggers the external API when there are changes in the data.

Querying

Custom SQL / Dynamic Query

Search Blueprints / Collections

Visual query builders make it possible to construct queries for Elasticsearch without writing Java or SQL code.

Display Listings

Asset Publisher

Collection Display Fragments

Pages will load faster, and designing will be easier because FreeMarker(ADTs) will be removed.

Global CSS (Design)

WAR Themes (CSS files)

Theme CSS Client Extensions

CSS can be injected dynamically without the need for restarts in the portal or any versioning constraints.

Branding (Design)

Theme hard-coding

Style Books

The colors and fonts can be immediately updated using the UI via CSS variables.

Assets (Global JS)

portal_normal.ft/scripts

JS Client Extensions

Analytics services, for example, “Google Tag Manager,” or code libraries, can also be introduced at a site level without creating a theme.

Assets (Site Icons)

Theme Images / Favicons

Favicon Client Extensions

The icons can be replaced by marketing teams using the interface offered by CX.

Workflows

Kaleo XML / Java Actions

Workflow with Webhooks

Workflows can be linked to the external Node or Python logic through APIs.

Custom Forms

Dynamic Data Lists (DDL)

Liferay Forms + Objects

A contemporary form builder is able to connect the fields directly to the Object entries for efficient data management.

Setup

(Provisioning)

Resource 

Importer

Site Initializer CX

Package entire sites (pages, assets, config) as a deployment unit.

Conclusion

Any time before performing a manual module/component creation operation, always pause and ask yourself: ‘Can I do this with an Object, a Fragment, or Client Extensions?’ If yes, then you will save yourself from a whole lot of upgrade challenges in the future.

Loading...

Related Blogs

March 17, 2020
custom configuration under Instance Settings in Liferay 7.2 Cover Image
Create custom configuration under Instance Settings in Liferay 7.2
July 15, 2020
Configuration Creator in Liferay Cover Image
Configuration Creator in Liferay 7.2
December 30, 2024
API Builder In Liferay
API Builder In Liferay
Loading...

Featured Projects Portfolios

June 19, 2024
Music License Management Portal _ Onboarding & Data Integrity
Music License Management Portal : Onboarding & Data Integrity
November 25, 2024
Liferay DXP Based Intranet Portal Migration from 7.0 to 7.4
Liferay DXP Based Intranet Portal Migration from 7.0 to 7.4
November 29, 2024
Employee Intranet Portal for Government Entity
Employee Intranet Portal for Government Entity

Digital Solutions for Your Business with IGNEK

4.9

5.0

5.0

5.0

LOGO

Making the world a better place through constructing elegant hierarchies

COMPANY

  • About
  • Career
  • Case Study
  • Blogs

SERVICES

  • Enterprise Portal Development
  • Dedicated Development Team
  • Back-end Development
  • Front-end Development
  • Digital Transformation
  • SaaS Development

HIRE US

  • Liferay
  • Spring Boot
  • ReactJS
  • Healthcare
  • MERN Stack
  • AEM

CONTACT

  • info@insights.ignek.com
  • info@insights.ignek.com
SALES
  • sales@insights.ignek.com
  • (+91) 635 157 6580
CAREER
  • hr@insights.ignek.com
  • (+91) 932 849 5160
  • E 910-912, Ganesh Glory 11, Jagatpur Road, SG Highway, Ahmedabad, Gujarat - 382470

© 2018-2026 IGNEK, Inc. All rights reserved

Linkedin Facebook X-twitter Instagram