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.

Category
Category
Multithreading Process
Multithreading Process Liferay DXP 7.4 U10+ or Liferay Portal 7.4 GA14+ Your Upgrade Processes may involve making complex changes to large data sets. If performance is critical, use the...
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...
Clay Buttons
Clay Buttons Buttons come in several types and variations. This tutorial covers the different styles and variations of buttons you can create with the Clay taglibs. Types Primary button: Used for...
Data Scopes
Data Scopes
Data Frameworks
Data Frameworks
Cache
Cache
Expando
Expando Accessing Custom Fields with Expando
Using JSF
Using JSF Liferay Faces is an umbrella project that provides support for the JavaServer[™] Faces (JSF) standard in Liferay DXP/Portal. Here are the Liferay Faces topics: Introduction to Liferay...
Reference
Reference
Clay Badges
Clay Badges Badges help highlight important information such as notifications or new and unread messages. Badges have circular borders and are only used to specify a number. This covers the...
Using Bean Portlet
Using Bean Portlet Portlet 3.0, the JSR 362 standard, features a style of portlet development called Bean Portlets that use Contexts and Dependency Injection (CDI). Bean Portlets fully leverage all...
Developing a Web Application
Developing a Web Application
Servlets
Servlets
Chart Tag Library
Chart Tag Library Lines, splines, bars, pies and more, the Chart tag Library provides everything you need to model data. Each taglib gives you access to the corresponding Clay component. These...
Reference
Reference
Clay Icons
Clay Icons The Liferay Clay taglibs provide several icons that you can use in your apps. Use the clay:icon tag and specify the icon with the symbol attribute: You can include icons in your app...
Objects
Objects Liferay 7.4+ With Liferay Objects, you can build and deliver applications without having to write code or deploy modules. Each application built with Objects is integrated with Liferay's...
Using Manual Actions
Using Manual Actions Liferay 7.4 U60+/GA60+ When you use the standalone trigger for object actions, the actions become manual instead of automatic. Trigger these actions using these methods: ...
Fields
Fields Liferay DXP 2023.Q4+/Portal GA102+ Object fields are data definitions that represent database columns and store different types of values. All objects include default system fields, but you...
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 (...
Activating and Deactivating Objects
Activating and Deactivating Objects Custom objects are activated when published. While active, you can use the object to create entries via the Liferay UI or dedicated REST APIs. If needed, you can...
Exporting and Importing Object Definitions
Exporting and Importing Object Definitions Liferay 7.4 U68+/GA68+ You can export and import object definitions as .json files. These files include the definition's complete schema (e.g.,...
Managing Objects with Headless APIs
Managing Objects with Headless APIs Liferay 7.4+ You can create and manage objects from the Applications menu, but you can also use Liferay's REST APIs. Call these services to create and manage...
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...
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: ...
Organizing Objects with Folders
Organizing Objects with Folders By default, object definitions are grouped in the Uncategorized folder, but you can add object folders to organize data models and manage access to definitions. ...
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...
Using Object Inheritance
Using Object Inheritance [Release Feature (LPD-34594)](../../../../security-and-administration/administration/configuring-liferay/feature-flags.md#release-feature-flags) Liferay DXP...
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...
Renaming Table Columns
Renaming Table Columns Liferay 7.4 U21+/GA21+ With custom views, you can change and localize the display name for table columns so you can serve your global users and ensure the table's naming...
Deploying Object Widgets to Sites
Deploying Object Widgets to Sites Liferay 7.4+ When an Object is published, Liferay automatically generates a dedicated widget you can deploy to site pages. This includes both site-scoped and...
Displaying Object Entries with Collections
Displaying Object Entries with Collections Liferay 7.4 U77+/GA77+ When you publish an object definition, Liferay creates a collection provider for it. For site-scoped objects, you can also create...
Managing Data from External Systems
Managing Data from External Systems [Release Feature](../../../security-and-administration/administration/configuring-liferay/feature-flags.md#release-feature-flags) Liferay Objects provides...
Using Objects with Salesforce
Using Objects with Salesforce [Release Feature](../../../../security-and-administration/administration/configuring-liferay/feature-flags.md#release-feature-flags) With Liferay, you can create...
Creating and Managing Objects
Creating and Managing Objects Liferay 7.4+ Liferay Objects provides a convenient UI for creating custom applications that meet your business needs without writing code. You can also use Objects to...
Understanding Action Types
Understanding Action Types Liferay 7.4 U60+/GA60+ Actions define custom operations triggered by object entry events. Liferay provides these action types: TypeDescription NotificationSend email or...
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...
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...
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...
Formula Fields
Formula Fields Liferay DXP 2023.Q4+/Portal GA102+ Formula fields store read-only values calculated using numeric fields in the object definition. Example use cases include calculating an...
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...
Aggregation Fields
Aggregation Fields Liferay 7.4 U47+/GA47+ Aggregation fields perform basic calculations on the entries from a relationship table and display the resulting values. Available aggregation functions...
Auto-Increment Fields
Auto-Increment Fields DXP 2024.Q1+/Portal GA112+ Auto-Increment fields are configurable read-only fields for uniquely identifying object entries in a human-readable format. For example, an IT...
Using Read-Only Fields
Using Read-Only Fields Some use cases may require data fields to be read-only. For example, data integrity may require some field values to remain immutable, or you may need to prevent unauthorized...
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...
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...
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,...
Using the Objects Model Builder
Using the Objects Model Builder [Liferay DXP 2023.Q4+/Portal GA102+](#model-builder-availability) For Liferay DXP 2023.Q4+/Portal GA102+, you must have Object Folder → View permissions to...
Validations
Validations Liferay 7.4+ Object validations set rules for determining valid field inputs. You can define validations with Groovy scripts, Liferay expressions, or a specified Composite Key...
Adding Field Validations
Adding Field Validations Liferay DXP 2023.Q3+/Portal GA92+ Validations set rules for determining valid field entries. Each validation has its own trigger, conditions, and error message, which you...
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...
Adding Filters to Views
Adding Filters to Views Liferay 7.4 U49+/GA49+ When designing a custom view, you can determine which fields appear as filter facets. Also, you can set default filters that apply automatically to...
Using Objects with SugarCRM
Using Objects with SugarCRM [Release Feature](../../../../security-and-administration/administration/configuring-liferay/feature-flags.md#release-feature-flags) You can create objects that map to...
Objects Application Permissions
Objects Application Permissions Liferay DXP 2023.Q4+/Portal GA102+ The Objects application is integrated with the permissions framework, so you can assign application and resource permissions to...
Using Glowroot with Liferay
Using Glowroot with Liferay Liferay DXP 2023.Q4+/Portal GA100+ Liferay bundles Glowroot, the open source Java application monitoring tool. The tool displays helpful statistics about your system...
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...
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...
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...
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...
Troubleshooting JVM Issues with Glowroot
Troubleshooting JVM Issues with Glowroot Liferay DXP 2023.Q4+/Portal GA100+ Glowroot displays a dashboard for identifying system issues quickly. Click the Errors tab to see a list of tracked...