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
Attachment Fields
Attachment Fields Attachment fields are for uploading files to your instance's Document Library. When uploaded, the file is linked to the entry's attachment field, and each field can only be linked...
Published Date: May 9, 24, 6:54 PM
Auto-Increment Fields
Auto-Increment Fields DXP 2024.Q1+/Portal 7.4 GA112+ Auto-Increment fields are configurable read-only fields for uniquely identifying object entries in a human-readable format. For example, an IT...
Published Date: May 9, 24, 6:54 PM
Encrypted Fields
Encrypted Fields Self-Hosted and Self-Managed Only Liferay 7.4 U72+/GA72+ Liferay provides the encrypted field type for storing sensitive user data. To use encrypted fields, first add an...
Published Date: May 9, 24, 6:54 PM
Formula Fields
Formula Fields Liferay 7.4 2023.Q4+/GA102+ Formula fields store read-only values calculated using numeric fields in the object definition. Example use cases include calculating an employee's...
Published Date: May 9, 24, 6:54 PM
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...
Published Date: May 9, 24, 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, 24, 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, 24, 6:54 PM
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. ...
Published Date: May 9, 24, 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, 24, 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, 24, 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, 24, 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, 24, 6:54 PM
Localizing Object Definitions and Entries
Localizing Object Definitions and Entries Liferay 7.4 2023.Q3+/GA92+ Liferay objects are integrated with the localization framework, so you can add translations for definition labels, and users...
Published Date: May 9, 24, 6:54 PM
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...
Published Date: May 9, 24, 6:54 PM
Relationships
Relationships Liferay 7.4 U47+/GA47+ Relationships add fields and tables to object definitions for relating their entries with one another. This provides access to entry data in different...
Published Date: May 9, 24, 6:54 PM
Removing Relationships
Removing Relationships Liferay 7.4 U26+/GA26+ You can remove relationships from both draft and published object definitions. Removing a relationship permanently deletes its field from the related...
Published Date: May 9, 24, 6:54 PM
Using System Objects with Custom Objects
Using System Objects with Custom Objects
Published Date: May 9, 24, 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, 24, 6:54 PM
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...
Published Date: May 9, 24, 6:54 PM
Using the Objects Model Builder
Using the Objects Model Builder [Liferay 7.4 2023.Q4+/GA102+](#model-builder-availability) For Liferay 7.4 2023.Q4+/GA102+, you must have Object Folder → View permissions to access the Objects...
Published Date: May 9, 24, 6:54 PM
Adding Field Validations
Adding Field Validations Liferay 7.4 2023.Q3+/GA92+ Validations set rules for determining valid field entries. Each validation has its own trigger, conditions, and error message, which you can set...
Published Date: May 9, 24, 6:54 PM
Expression Builder Validations Reference
Expression Builder Validations Reference Liferay 7.4 U67+/GA67+ With custom Objects, you can create field validations using Liferay's Expression Builder. This tool provides an integrated editor...
Published Date: May 9, 24, 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, 24, 6:54 PM
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...
Published Date: May 9, 24, 6:54 PM
Designing Object Views
Designing Object Views Liferay 7.4+ Views define how entries appear in an object's application page. Though each published object has an autogenerated view, you can create your own. Design custom...
Published Date: May 9, 24, 6:54 PM
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...
Published Date: May 9, 24, 6:54 PM
Setting a Default Sorting
Setting a Default Sorting Liferay 7.4 U18+/GA18+ With custom views, you can set a default sorting for tables. Follow these steps: Begin editing the desired view and go to the Default Sort tab. ...
Published Date: May 9, 24, 6:54 PM
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...
Published Date: May 9, 24, 6:54 PM
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...
Published Date: May 9, 24, 6:54 PM
Integrating Objects with Third Party Services
Integrating Objects with Third Party Services You can use Liferay Objects with popular data integration tools to create automated tasks for syncing Object data with external services. These tasks...
Published Date: May 9, 24, 6:54 PM
Managing Data from External Systems
Managing Data from External Systems [Beta Feature](../../../system-administration/configuring-liferay/feature-flags.md#beta-feature-flags) Liferay Objects provides low-code capabilities for...
Published Date: May 9, 24, 6:54 PM
Using Objects with SugarCRM
Using Objects with SugarCRM [Beta Feature](../../../../system-administration/configuring-liferay/feature-flags.md#beta-feature-flags) You can create objects that map to SugarCRM objects (for...
Published Date: Jun 5, 24, 4:04 PM
Using Objects with Salesforce
Using Objects with Salesforce [Beta Feature](../../../../system-administration/configuring-liferay/feature-flags.md#beta-feature-flags) With Liferay, you can create objects that integrate with...
Published Date: May 9, 24, 6:54 PM
Objects Application Permissions
Objects Application Permissions Liferay 7.4 2023.Q4+/GA102+ The Objects application is integrated with the permissions framework, so you can assign application and resource permissions to user...
Published Date: May 9, 24, 6:54 PM
Understanding Object Integrations
Understanding Object Integrations Published custom objects are integrated with Liferay's core frameworks, so you can leverage Liferay's features to build unified experiences across the platform....
Published Date: May 9, 24, 6:54 PM
Reference
Reference App Builder Deploying WARs (WAB Generator) JARS Excluded from WABs
Published Date: May 9, 24, 6:54 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, 24, 6:55 PM
Creating the Role Change Request App
Creating the Role Change Request App Subscribers The Role Change Request App starts with the employee submitting a request form. Processing then proceeds to the Current Manager, then to the...
Published Date: May 9, 24, 6:55 PM
Blade CLI
Blade CLI Blade CLI can be installed through a command line interface or a graphical installer. If you're behind a proxy, once it's installed you can configure it to operate through the proxy....
Published Date: May 9, 24, 6:55 PM
Generating Projects with Blade CLI
Generating Projects with Blade CLI Blade CLI exists to create, build, and deploy Liferay projects in Liferay Workspaces. Once created, these projects can be imported into an IDE or worked on...
Published Date: May 9, 24, 6:55 PM
App Builder
App Builder Available: Liferay CE/DXP 7.3 (deprecated and removed in 7.4) App Builder is a low-code application development solution for Liferay DXP. Build a data model, define the application's...
Published Date: May 9, 24, 6:54 PM
Creating the Role Change Request Object
Creating the Role Change Request Object Subscribers Consider a Human Resources application that collects employee requests to change Roles within the software engineering department: the Role...
Published Date: May 9, 24, 6:55 PM
Tooling
Tooling Liferay provides a variety of developer tools that include standard build scripting, lightweight CLI utilities, and full IDE based on Eclipse. This is to serve all developers, whether...
Published Date: May 9, 24, 6:55 PM
Liferay Workspace
Liferay Workspace Liferay Workspace is a set of folders and Gradle scripts that represents the Liferay-opinionated way of handling a full development life cycle: Creating projects Building...
Published Date: May 9, 24, 6:55 PM
How AMD Loader Configuration is Exported
How AMD Loader Configuration is Exported If you don't understand how Liferay AMD Loader works under the hood, please read [Liferay AMD Module Loader](./understanding-bundler-loaders.md) first. ...
Published Date: May 9, 24, 6:55 PM
Default Bundler Loaders
Default Bundler Loaders Several loaders are available for the liferay-npm-bundler by default: babel-loader: processes source files with Babel. This avoids an extra build step before the bundler....
Published Date: May 9, 24, 6:55 PM
How the Bundler Publishes npm Packages
How the Bundler Publishes npm Packages When you deploy an OSGi bundle with the specified structure, its modules are made available for consumption through canonical URLs. To better illustrate...
Published Date: May 9, 24, 6:55 PM
How JavaScript Modules are Formatted for AMD
How JavaScript Modules are Formatted for AMD Liferay AMD Loader is based on the AMD specification. All modules inside an npm OSGi bundle must be in AMD format. This is done for CommonJS modules by...
Published Date: May 9, 24, 6:55 PM
Understanding Bundler Configuration Presets
Understanding Bundler Configuration Presets The liferay-npm-bundler comes with a default configuration preset: liferay-npm-bundler-preset-standard. You may omit the liferay-npm-bundler prefix from...
Published Date: May 9, 24, 6:55 PM
Liferay npm Bundler
Liferay npm Bundler The liferay-npm-bundler is a bundler (like Webpack or Browserify) that targets Liferay Portal as a platform and assumes you're using your npm packages from widgets (as opposed...
Published Date: May 9, 24, 6:55 PM
Running a Test
Running a Test Open the poshi-ext.properties file on your poshi-standalone directory and add the following line, replacing the TestCaseFileName#TestCaseName with the one you created in Creating A...
Published Date: May 9, 24, 6:55 PM
Setup
Setup Prerequisites A supported version of Java. Google Chrome. Gradle or Gradle Wrapper 6.6.1 or higher. Setting up the Poshi Standalone Gradle Project Create a new directory, example...
Published Date: May 9, 24, 6:55 PM
Syntax Validation
Syntax Validation The Poshi Standalone grade projects includes a validation task that can be used to check your code for syntax errors before running your test. To use this, simply run ./gradlew...
Published Date: May 9, 24, 6:55 PM
Understanding Test Results and Debugging Tests
Understanding Test Results and Debugging Tests Poshi tests are run on the terminal or command line. When a test run is completed there are multiple ways to view the test results and diagnose test...
Published Date: May 9, 24, 6:55 PM
Poshi Basics
Poshi Basics New features, improvements, and system upgrades can sometimes introduce unexpected behaviors and bugs. Running suites of automated tests is an advantageous method of identifying issues...
Published Date: May 9, 24, 6:55 PM
Poshi Advantages
Poshi Advantages Simplified Syntax To make it easier for less technical testers to read and write test automation, Poshi uses a simplified Groovy-like script syntax. It is less wordy than most...
Published Date: May 9, 24, 6:55 PM
Poshi Layers
Poshi Layers
Published Date: May 9, 24, 6:55 PM
Using Poshi Resources
Using Poshi Resources Once the Poshi resources jar file is loaded onto your Poshi project, you are now able to use Liferay's commonly used functions, paths, and macros. To distinguish between files...
Published Date: May 9, 24, 6:55 PM
Reference
Reference Node Version Information
Published Date: May 9, 24, 6:55 PM
Node Version Information
Node Version Information Liferay DXP uses Node (and NPM) for many different frontend components. Specifically, the Liferay Theme Generator and Liferay's JavaScript application tools require the use...
Published Date: May 9, 24, 6:55 PM

Capabilities

Product

Contact Us

Connect

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