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
Testcases
Testcases A testcase file in Poshi is a collection of test scenarios grouped in blocks of code called test blocks. The three main test blocks: setUp, test, and tearDown, are made up of multiple...
Published Date: May 9, 2024 6:55 PM
Poshi Resources
Poshi Resources To give Poshi test writers easy access to commonly used functions or other files, Poshi resources were created to store existing Poshi files as dependencies that can be loaded apart...
Published Date: May 9, 2024 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, 2024 6:55 PM
Using the Bootstrap 3 Compatibility Layer in Liferay 7.4
Using the Bootstrap 3 Compatibility Layer in Liferay 7.4 As of Liferay DXP 7.4 GA1, the Bootstrap 3 compatibility layer is removed from the built-in packages in Liferay frontend applications. If...
Published Date: May 9, 2024 6:55 PM
Architecture
Architecture The Liferay DXP/Portal architecture has three parts: Core: Bootstraps DXP and its frameworks. The Core provides a runtime environment for managing services, UI components, and...
Published Date: May 9, 2024 6:55 PM
Exported Third Party Packages
Exported Third Party Packages Liferay provides over one-hundred third party Java packages at run time. The com.liferay.portal.bootstrap module exports the packages by specifying individual packages...
Published Date: May 9, 2024 6:55 PM
Portlets
Portlets Liferay DXP started off as a portal server for Java-based web applications called portlets (see JSR 168, JSR-286, and JSR-362). Portlets process requests and generate responses like any...
Published Date: May 9, 2024 6:53 PM
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...
Published Date: May 9, 2024 6:53 PM
CDI Portlet Predefined Beans
CDI Portlet Predefined Beans Liferay DXP provides injectable portlet artifacts for CDI called Portlet Predefined Beans, as specified by JSR 362. There are two types of predefined beans: Portlet...
Published Date: May 9, 2024 6:53 PM
Liferay Faces Bridge
Liferay Faces Bridge Liferay Faces Bridge enables you to deploy JSF web apps as portlets without writing portlet-specific code. It also contains innovative features that make it possible to...
Published Date: May 9, 2024 6:53 PM
Liferay Faces Version Scheme
Liferay Faces Version Scheme In this article, you'll learn which Liferay Faces artifacts should be used with your portlet and explore the Liferay Faces versioning scheme by discovering what each...
Published Date: May 9, 2024 6:53 PM
MVC Resource Command
MVC Resource Command MVC Resource Command classes retrieve resources: images, XML, or any other kind of resource from a DXP/Portal instance without triggering any actions or renders. Requests or...
Published Date: May 9, 2024 6:53 PM
Alloy UI (AUI) Tag Library
Alloy UI (AUI) Tag Library The AUI tag library provides tags that implement commonly used UI components. These tags make your markup consistent, responsive, and accessible. You can find a list of...
Published Date: May 9, 2024 6:53 PM
Building Forms with AUI Tags
Building Forms with AUI Tags The AUI tag library provides all the components you need to build forms for your applications. AUI tags provide many benefits to standard form elements, such as custom...
Published Date: May 9, 2024 6:53 PM
Geomap Chart
Geomap Chart A Geomap Chart shows data based on geography, given a specified color range---a lighter color representing a lower rank and a darker a higher rank usually. The default configuration...
Published Date: May 9, 2024 6:53 PM
Combination Charts
Combination Charts Combination charts have minor differences from other charts. In a combination chart, you must define the representation type of each data set: AREA, AREA_SPLINE, AREA_STEP, BAR,...
Published Date: May 9, 2024 6:53 PM
Donut Charts
Donut Charts Donut charts are percentage-based. A donut chart is similar to a pie chart, but it has a hole in the center. Each data set must be defined as a new instance of the SingleValueColumn...
Published Date: May 9, 2024 6:53 PM
Scatter Charts
Scatter Charts Scatter charts contain multiple sets of data. A scatter chart models the data as individual points. Each data series (created with the addColumns() method) is defined with a new...
Published Date: May 9, 2024 6:53 PM
Step Charts
Step Charts Step charts contain multiple sets of data. A step chart steps between the points of data, resembling steps. Each data series (created with the addColumns() method) is defined with a new...
Published Date: May 9, 2024 6:53 PM
Clay Navigation Bars
Clay Navigation Bars Similar to dropdown menus, navigation bars display a list of navigation items. The key difference is navigation bars are displayed in a horizontal bar with all navigation items...
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
Clay Progress Bars
Clay Progress Bars You can add progress bars to your app with the clay:progressbar tag. These indicate the completion percentage of a task and come in three status styles: default (blue), warning...
Published Date: May 9, 2024 6:53 PM
Clay Stickers
Clay Stickers Whereas badges display numbers and labels display short information, stickers are small visual indicators of the content (usually the content type). They can include a small label or...
Published Date: May 9, 2024 6:53 PM
Liferay Theme Objects For JSPs
Liferay Theme Objects For JSPs When you include the tag in your JSP, you gain access to several Liferay theme objects via variables. These objects are described in the table below: ...
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
Liferay UI Icon Menus
Liferay UI Icon Menus You can add a pop-up navigation menu to your app with the liferay-ui:icon-menu tag. Icon menus display menu options when needed, storing them away in a collapsed menu when...
Published Date: May 9, 2024 6:53 PM
Using Liferay Util HTML Top
Using Liferay Util HTML Top The HTML top tag is not a self-closing tag. The content placed between the opening and closing of this tag is moved to the tag. When something is passed using this...
Published Date: May 9, 2024 6:53 PM
Dependency Injection
Dependency Injection
Published Date: May 9, 2024 6:53 PM
Portlet Providers
Portlet Providers
Published Date: May 9, 2024 6:53 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
Theme Sprite Map YAML Configuration Reference
Theme Sprite Map YAML Configuration Reference You can define a theme sprite map client extension with a client-extension.yaml file. Usage Details This client-extension.yaml defines a theme sprite...
Published Date: May 9, 2024 6:54 PM
Using Data Set Actions
Using Data Set Actions Liferay DXP 2024.Q1 U112 [Beta Feature](../../../../system-administration/configuring-liferay/feature-flags.md#beta-feature-flags) Here are some examples for how to use...
Published Date: May 9, 2024 6:54 PM
Object Action YAML Configuration Reference
Object Action YAML Configuration Reference You can define an object action client extension with a client-extension.yaml file. Usage Details This client-extension.yaml defines an object action and...
Published Date: May 9, 2024 6:54 PM
Creating a Basic Custom Element
Creating a Basic Custom Element Liferay 7.4+ Custom element client extensions use Liferay's frontend infrastructure to register external, remote applications with the Liferay platform and render...
Published Date: May 9, 2024 6:54 PM
Custom Element YAML Configuration Reference
Custom Element YAML Configuration Reference You can define a custom element client extension with a client-extension.yaml file. Usage Details This client-extension.yaml file defines a custom...
Published Date: May 9, 2024 6:54 PM
Object Validation Rule YAML Configuration Reference
Object Validation Rule YAML Configuration Reference To define an Object Validation Rule client extension, add the objectValidationRule type to your client-extension.yaml file. Usage Details This...
Published Date: May 9, 2024 6:54 PM
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...
Published Date: May 9, 2024 6:54 PM
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...
Published Date: May 9, 2024 6:54 PM
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.,...
Published Date: May 9, 2024 6:54 PM
Extending System Objects
Extending System Objects Liferay 7.4 U86+/GA86+ With Liferay Objects, you can extend supported system services. Currently, only these services are integrated with the Objects framework: Account...
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
Adding Fields to Objects
Adding Fields to Objects Liferay 7.4 2023.Q4+/GA102+ Fields are data definitions that represent database columns and store different types of values. By default, all objects include these system...
Published Date: May 9, 2024 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, 2024 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, 2024 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, 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
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
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, 2024 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, 2024 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, 2024 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, 2024 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, 2024 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, 2024 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, 2024 6:54 PM
Reference
Reference App Builder Deploying WARs (WAB Generator) JARS Excluded from WABs
Published Date: May 9, 2024 6:54 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, 2024 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, 2024 6:55 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, 2024 6:55 PM
JARs Excluded from WABs
JARs Excluded from WABs [Liferay-generated web application bundles (WABs) are stripped of third party JARs that contain packages that Liferay exports already. Deploying the same third party...
Published Date: May 9, 2024 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, 2024 6:55 PM

Capabilities

Product

Education

Contact Us

Connect

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