Capability

Development and Tooling

Liferay offers a comprehensive toolkit to extend or customize your digital experience. Build applications quickly with low-code/no-code features like Objects, or leverage developer tools like Liferay Workspace and Blade CLI for further customizations.

For users on PaaS or running Self-Hosted, Liferay also offers tools deploying customizations.

Feature
Deployment Approach
Developing Glowroot Plugins
Developing Glowroot Plugins Liferay DXP 2023.Q4+/Portal GA100+ Glowroot provides various out-of-the-box plugins. You can also build your own with the use of their plugin API. Here are some tips...
Published Date: May 9, 2024 6:59 PM
Liferay Performance Use Cases with Glowroot
Liferay Performance Use Cases with Glowroot Liferay DXP 2023.Q4+/Portal GA100+ Use Glowroot to diagnose and inform you on making performance improvements to your Liferay installation. Here are a...
Published Date: May 9, 2024 6:59 PM
Troubleshooting Liferay Performance Issues with Glowroot
Troubleshooting Liferay Performance Issues with Glowroot Liferay DXP 2023.Q4+/Portal GA100+ Use Glowroot to identify and diagnose performance issues in your Liferay installation. The following...
Published Date: May 9, 2024 6:59 PM
Using the Script Engine
Using the Script Engine Liferay provides a robust script engine for executing Groovy scripts. You can execute scripts to perform maintenance tasks involving data cleanup, user maintenance...
Published Date: May 9, 2024 6:59 PM
Running Scripts From the Script Console
Running Scripts From the Script Console The Script Console provides a single view for executing Groovy scripts and printing their output. It has predefined variables that facilitate working with...
Published Date: May 9, 2024 6:59 PM
Script Examples
Script Examples Here are some examples to help you use scripts in DXP. Most of the examples originated from the Liferay blog post 5 Tips to Improve Usage of the Liferay Script Console. Example 1:...
Published Date: May 9, 2024 6:59 PM
Developer Guide
Developer Guide
Published Date: May 9, 2024 6:59 PM
Account Users and Roles APIs
Account Users and Roles APIs You can manage Account Users and Account Roles from the Applications menu, but you can also use Liferay's REST APIs. Call these services to create and manage account...
Published Date: May 9, 2024 6:59 PM
Adding the UAD Framework
Adding the UAD Framework You can manage and delete user data with Liferay's User Associated Data (UAD) management tool. The tool is available out-of-the-box for many of Liferay's applications (e.g....
Published Date: May 9, 2024 6:59 PM
Creating Video Shortcut Providers
Creating Video Shortcut Providers Liferay DXP 7.4+ By default, Liferay's external video shortcuts support YouTube, Vimeo, Facebook, and Twitch. However, you can extend this feature to support...
Published Date: May 9, 2024 6:50 PM
Using Client Extensions
Using Client Extensions Liferay DXP 2024.Q1+/Portal GA112+ Using client extensions, you can extend Liferay without using OSGi modules. Deploy them to any Liferay environment, whether you host it...
Published Date: May 9, 2024 6:45 PM
Using the Checkout Step Client Extension
Using the Checkout Step Client Extension Liferay DXP 2024.Q1+/Portal GA112+ You can use a client extension to create a new checkout step. This tutorial uses an example client extension from the...
Published Date: May 9, 2024 6:45 PM
Using the Payment Integration Client Extension
Using the Payment Integration Client Extension Liferay DXP 2024.Q1+/Portal GA112+ You can use a client extension to integrate with a new payment method in Liferay. This client extension from the...
Published Date: May 9, 2024 6:45 PM
Using the Shipping Engine Client Extension
Using the Shipping Engine Client Extension Liferay DXP 2024.Q1+/Portal GA112+ You can use a client extension to add a new shipping engine to Liferay. This client extension from the sample...
Published Date: May 9, 2024 6:45 PM
Data Set Actions
Data Set Actions Liferay DXP 2024.Q1+/Portal GA112+ Currently, this feature is behind a release feature flag (LPS-164563). While managing data set, define actions to be used in the data set...
Published Date: May 9, 2024 6:54 PM
Data Sets
Data Sets Liferay DXP 2024.Q1+/Portal GA112+ Currently, this feature is behind a release feature flag (LPS-164563). Data sets are like virtual containers that help organize and manage related...
Published Date: May 9, 2024 6:54 PM
Data Set Filters
Data Set Filters Liferay DXP 2024.Q1/Portal GA112 Currently, this feature is behind a release feature flag (LPS-164563). While managing data sets, you can define pre-applied filters to be used...
Published Date: May 9, 2024 6:54 PM
Liferay Faces Alloy
Liferay Faces Alloy Liferay Faces Alloy is distributed in a .jar file. You can add Liferay Faces Alloy as a dependency to your portlet projects, to use AlloyUI in a way that is consistent with JSF...
Published Date: May 9, 2024 6:53 PM
Defining Entity Finder Methods
Defining Entity Finder Methods Finder methods retrieve entity objects from the database based on specified parameters. For each finder defined, Service Builder generates several methods to fetch,...
Published Date: May 9, 2024 6:52 PM
Defining Entities
Defining Entities Entities are the heart and soul of a service. They represent the map between the model objects in Java and your database fields and tables. Service Builder automatically maps your...
Published Date: May 9, 2024 6:52 PM
MVC Render Command
MVC Render Command MVC Render Commands are classes that handle which page to render. They are invoked by MVCPortlet render URLs and requests. If your render logic is simple you can implement all of...
Published Date: May 9, 2024 6:53 PM
Rendering Views with MVC Portlet
Rendering Views with MVC Portlet If you want users to access your portlet's views, you must implement navigation to them. Portlet render URLs help you do this. Here you'll deploy an example...
Published Date: May 9, 2024 6:53 PM
Invoking Actions with MVC Portlet
Invoking Actions with MVC Portlet A portlet's Action phase applies state changes. You can bind your portlet's action-handling methods to UI components using portlet action URLs. They are...
Published Date: May 9, 2024 6:53 PM
Tag Libraries
Tag Libraries You have access to a powerful set of taglibs for creating commonly used UI components in your apps, themes, and web content. The following taglibs are covered in this section: AUI:...
Published Date: May 9, 2024 6:53 PM
Clay Tag Library
Clay Tag Library The Liferay Clay tag library provides a set of tags for creating Clay UI components in your app. AUI taglibs are deprecated as of Liferay 7.1. We recommend that you use Clay...
Published Date: May 9, 2024 6:53 PM
Clay Cards
Clay Cards Cards visually represent data. Use them for images, document libraries, user profiles and more. There are four main types of Cards: Image Cards File Cards User Cards Horizontal...
Published Date: May 9, 2024 6:53 PM
Using a JSP and MVC Portlet
Using a JSP and MVC Portlet An easy way to start developing a web application is to add markup to a JSP file and render it using a portlet Java class. The W3E7 example application demonstrates...
Published Date: May 9, 2024 6:53 PM
Liferay UI Icon Help
Liferay UI Icon Help The icon help tag lets you communicate additional information to your users in an unobtrusive way. It renders as an iconic question mark that provides more information through...
Published Date: May 9, 2024 6:53 PM
Remote Applications with Headless APIs
Remote Applications with Headless APIs Available 7.4+ After creating and publishing objects, headless REST APIs are automatically generated. Here you'll see how to integrate these endpoints to...
Published Date: Nov 22, 2024 10:50 PM
Configuration Form Renderer
Configuration Form Renderer When you create a configuration interface, a configuration UI is automatically generated. But in some cases you want customize the look and feel of the UI. For example,...
Published Date: Nov 22, 2024 10:50 PM
Hiding the Configuration UI
Hiding the Configuration UI Liferay generates a configuration UI automatically after a configuration interface deploys. But you may have certain use cases where you want to hide the UI. For...
Published Date: Nov 22, 2024 10:50 PM
Field Options Provider
Field Options Provider You can populate a drop-down list manually in the @Meta.AD annotation of the configuration interface. But you can also populate the option labels and values automatically...
Published Date: Nov 22, 2024 10:50 PM
Packaging Client Extensions
Packaging Client Extensions Liferay Self-Hosted Liferay SaaS Liferay PaaS Liferay 7.4 Client extension projects are built as deployable archives called Liferay Universal File Format Archives...
Published Date: Nov 22, 2024 10:50 PM
Using Object Data with React Charts
Using Object Data with React Charts Here you'll use Objects, Headless APIs, and custom element remote applications to create a dynamic chart for data dashboards. First, you'll set up a new DXP...
Published Date: Nov 22, 2024 10:50 PM
DDM Form Annotations
DDM Form Annotations The auto-generated configuration interface UI may be too simplistic for some configurations. You can use the Dynamic Data Mapping (DDM) form annotations to customize your...
Published Date: Nov 22, 2024 10:50 PM
Message Bus
Message Bus The Message Bus provides a loosely coupled way to exchange messages. A class sending a message invokes the Message Bus to send the message to a destination, while other classes...
Published Date: May 9, 2024 6:53 PM
Using a Microservice Client Extension
Using a Microservice Client Extension A microservice client extension is a standalone server process that relies on OAuth 2 for communication with Liferay. The microservice is a resource server and...
Published Date: May 9, 2024 6:54 PM
Using a CSS Client Extension
Using a CSS Client Extension Liferay 7.4+ CSS client extensions introduce new CSS styling to pages. A deployed CSS client extension on a page adds to the page's existing styling, including theme...
Published Date: May 9, 2024 6:54 PM
Using a JavaScript Client Extension
Using a JavaScript Client Extension Liferay 7.4+ With a JavaScript (JS) client extension, you can run your own JavaScript on any page in Liferay without worrying about dependencies on Liferay code...
Published Date: May 9, 2024 6:54 PM
Using a Theme Favicon Client Extension
Using a Theme Favicon Client Extension Liferay 7.4+ With a theme favicon client extension, you can override the theme's favicon on the selected page. Start with the sample workspace to build and...
Published Date: May 9, 2024 6:54 PM
Using a Theme Sprite Map Client Extension
Using a Theme Sprite Map Client Extension Liferay DXP 2023.Q4+/Portal GA100+ With a theme sprite map client extension, you can override the default Clay sprite map used for icons on a page. Start...
Published Date: May 9, 2024 6:54 PM
Adding Fields to Objects
Adding Fields to Objects Liferay DXP 2023.Q4+/Portal GA102+ Fields are data definitions that represent database columns and store different types of values. By default, all objects include these...
Published Date: May 9, 2024 6:54 PM
Encrypted Fields
Encrypted Fields Self-Hosted and PaaS Only Liferay 7.4 U72+/GA72+ Liferay provides the encrypted field type for storing sensitive user data. To use encrypted fields, first add an encryption...
Published Date: May 9, 2024 6:54 PM
Adding Categorization to Fields Tabs
Adding Categorization to Fields Tabs Liferay 7.4 U31+/GA31+ You can add categorization blocks to fields tabs so end users can apply tags and categories to object entries. Follow these steps: ...
Published Date: May 9, 2024 6:54 PM
Accessing Accounts Data from Custom Objects
Accessing Accounts Data from Custom Objects Liferay 7.4 U35+/GA35+ In some use cases, you may want to access account data from a custom object. For example, if you're building a custom returns...
Published Date: May 9, 2024 6:54 PM
Expression Builder Validations Reference
Expression Builder Validations Reference Liferay 7.4 U67+/GA67+ You can create object field validations using Liferay's Expression Builder. This tool provides an integrated editor for quickly...
Published Date: May 9, 2024 6:54 PM
Creating Objects
Creating Objects Liferay DXP 2023.Q4+/Portal GA102+ Liferay Objects provides development capabilities in the Liferay UI. Using Objects, you can build fully integrated Liferay applications without...
Published Date: May 9, 2024 6:54 PM
Layouts
Layouts Liferay 7.4+ Object layouts define how fields and relationships appear when creating and editing entries. All published objects include an autogenerated layout with a single tab that lists...
Published Date: May 9, 2024 6:54 PM
Auditing Object Events
Auditing Object Events Liferay 7.4 U72+/GA72+ You can use Liferay's audit framework to track events for custom object definitions and their entries. To track entry events, you must enable entry...
Published Date: May 9, 2024 6:54 PM
Defining Object Actions
Defining Object Actions Liferay 7.4 U60+/GA60+ Object actions define operations that you can run manually or automatically for object entry events. To add an action, Open the Global Menu (...
Published Date: May 9, 2024 6:54 PM
Adding and Managing Custom States
Adding and Managing Custom States Liferay 7.4+ Some use cases may require assigning multiple states to an object entry at the same time. For example, when building an Order application, you may...
Published Date: May 9, 2024 6:54 PM
Picklist Fields
Picklist Fields Liferay 7.4 U72+/GA72+ Picklists define lists of text values usable as single select or multi-select fields in object definitions. By default, single select fields appear as...
Published Date: May 9, 2024 6:54 PM
Restricting Access to Object Data by Account
Restricting Access to Object Data by Account Liferay 7.4 U58+/GA58+ In scenarios with multiple business accounts, you may want to restrict access to object entries by account. For example,...
Published Date: May 9, 2024 6:54 PM
Views
Views Views define how entries appear in an object's application page. All published objects include an autogenerated table that displays all field columns alphabetically. However, you can design...
Published Date: May 9, 2024 6:54 PM
Designing Object Layouts
Designing Object Layouts Liferay 7.4 U31+/GA31+ Layouts define how fields and relationships appear when creating and editing object entries. Each layout can include multiple tabs containing...
Published Date: May 9, 2024 6:54 PM
Defining Object Relationships
Defining Object Relationships Liferay 7.4+ Relationships add fields and tables to object definitions for relating their entries to one another. Follow these steps to add relationships to object...
Published Date: May 9, 2024 6:54 PM
How JavaScript Modules are Formatted for AMD
How JavaScript Modules are Formatted for AMD The Liferay npm bundler is deprecated of Liferay 2024.Q4/Portal GA129, and it's planned for future removal. Liferay AMD Loader is based on the AMD...
Published Date: May 9, 2024 6:55 PM
Understanding Bundler Configuration Presets
Understanding Bundler Configuration Presets The Liferay npm bundler is deprecated of Liferay 2024.Q4/Portal GA129, and it's planned for future removal. The liferay-npm-bundler comes with a...
Published Date: May 9, 2024 6:55 PM
Creating a Standard Application
Creating a Standard Application To create applications based on a custom object takes four steps: create the object, create at least one form view, create at least one table view, and deploy the...
Published Date: May 9, 2024 6:55 PM
How the Bundler Publishes npm Packages
How the Bundler Publishes npm Packages The Liferay npm bundler is deprecated of Liferay 2024.Q4/Portal GA129, and it's planned for future removal. When you deploy an OSGi bundle with the...
Published Date: May 9, 2024 6:55 PM

Capabilities

Product

Education

Contact Us

Connect

Powered by Liferay
© 2024 Liferay Inc. All Rights Reserved • Privacy Policy