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
Using MVC
Using MVC If you're an experienced developer, this is not the first time you've heard about Model View Controller. If there are so many implementations of MVC frameworks in Java, why did Liferay...
Published Date: May 9, 24, 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, 24, 6:53 PM
MVC Action Command
MVC Action Command MVC Action Commands handle actions as separate classes. With Action Commands, you can organize action logic in MVCPortlets that have many actions. Action URLs in the portlet's...
Published Date: May 9, 24, 6:53 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, 24, 6:53 PM
Line Charts
Line Charts Line charts contain multiple sets of data. A Line chart displays the data linearly. Each data series (created with the addColumns() method) is defined with a new instance of the ...
Published Date: May 9, 24, 6:53 PM
Pie Charts
Pie Charts Pie charts are percentage-based. A pie chart models percentage-based data as individual slices of pie. Each data set must be defined as a new instance of the SingleValueColumn object....
Published Date: May 9, 24, 6:53 PM
Predictive Charts
Predictive Charts Predictive charts let you visualize current data along with predicted/forecasted data within a given value range. Predicted/forecasted data is surrounded by a highlighted area of...
Published Date: May 9, 24, 6:53 PM
Refreshing Charts to Reflect Real Time Data
Refreshing Charts to Reflect Real Time Data The polling interval property is an optional property for all charts. It specifies the time in milliseconds for the chart's data to refresh. You can use...
Published Date: May 9, 24, 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, 24, 6:53 PM
Spline Charts
Spline Charts Spline charts contain multiple sets of data. A spline chart connects points of data with a smooth curve. Each data series (created with the addColumns() method) is defined with a new...
Published Date: May 9, 24, 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, 24, 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, 24, 6:53 PM
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...
Published Date: May 9, 24, 6:53 PM
Bar Charts
Bar Charts Bar charts contain multiple sets of data. A bar chart models the data in bars. Each data series (created with the addColumns() method) is defined with a new instance of the...
Published Date: May 9, 24, 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, 24, 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, 24, 6:53 PM
Gauge Charts
Gauge Charts Gauge charts are percentage-based. A gauge chart shows where percentage-based data falls over a given range. Each data set must be defined as a new instance of the SingleValueColumn...
Published Date: May 9, 24, 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, 24, 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, 24, 6:53 PM
Clay Alerts
Clay Alerts Clay alerts come in two types: embedded and stripe. Both types, along with several examples of each, are shown below. Embedded Alerts Embedded alerts are usually used inside forms. The...
Published Date: May 9, 24, 6:53 PM
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...
Published Date: May 9, 24, 6:53 PM
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...
Published Date: May 9, 24, 6:53 PM
Clay Dropdown Menus and Action Menus
Clay Dropdown Menus and Action Menus You can add dropdown menus to your app via the clay:dropdown-menu and clay:actions-menu taglibs. The Clay taglibs provide several menu variations for you to...
Published Date: May 9, 24, 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, 24, 6:53 PM
Liferay Portlet Objects For JSPs
Liferay Portlet Objects For JSPs You may have noticed the tag in your JSPs. Similar to the theme:defineObjects tag, when you include this tag in your JSP, you gain access to several variables ...
Published Date: May 9, 24, 6:53 PM
Clay Labels and Links
Clay Labels and Links Liferay Clay taglibs provide tags for creating labels and links in your app. Both of these elements are covered below. Labels The Liferay Clay taglibs provide a few different...
Published Date: May 9, 24, 6:53 PM
Clay Form Elements
Clay Form Elements The Liferay Clay tag library provides several tags for creating form elements. An example of each tag is shown below. Checkbox Checkboxes give the user a true or false input. "...
Published Date: May 9, 24, 6:53 PM
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...
Published Date: May 9, 24, 6:53 PM
Clay Management Toolbar
Clay Management Toolbar The Management Toolbar gives administrators control over search container results in their apps. It lets you filter, sort, and choose a view type for search results, so you...
Published Date: May 9, 24, 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, 24, 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, 24, 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, 24, 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, 24, 6:53 PM
Liferay UI Tag Library
Liferay UI Tag Library The Liferay UI tag library provides tags that implement commonly used UI components. These tags make your markup consistent, responsive, and accessible. You can find a list...
Published Date: May 9, 24, 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, 24, 6:53 PM
Liferay UI Icon Lists
Liferay UI Icon Lists An icon list displays icons in a horizontal list, instead of in a pop-up navigation menu like an icon menu. You can see an example of an icon list menu in a message board...
Published Date: May 9, 24, 6:53 PM
Liferay UI Icons
Liferay UI Icons The Liferay UI taglibs provide several icons you can include in your apps. To add an icon to your app, use the liferay-ui:icon tag and specify the icon with either the icon,...
Published Date: May 9, 24, 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, 24, 6:53 PM
Using Liferay Util Body Bottom
Using Liferay Util Body Bottom The body bottom tag is not a self-closing tag. It lets you add additional HTML or scripts to the bottom of the body tag. content placed between the opening and...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util Dynamic Include
Using Liferay Util Dynamic Include The dynamic include tag lets you specify a point or points in a JSP or theme where a developer can inject additional HTML, resources, or functionality, using the...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util Include
Using Liferay Util Include The include tag lets you include other JSP files in your portlet's JSP, theme, or web content. This can increase readability as well as provide separation of concerns for...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util Whitespace Remover
Using Liferay Util Whitespace Remover The whitespace remover tag removes line breaks and tabs from code blocks included between the opening and closing of the tag. Below is an example configuration...
Published Date: May 9, 24, 6:53 PM
Liferay UI Tabs
Liferay UI Tabs Tabs create dividers that organize content into individual sections. Content can be embedded or included from another JSP. To add tabs to your app, use the tag and specify each...
Published Date: May 9, 24, 6:53 PM
Liferay Util Tag Library
Liferay Util Tag Library The Liferay Util taglib is used to pull other resources into a portlet or theme. You can use it to specify which resources to insert at the bottom or top of the page's...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util Body Top
Using Liferay Util Body Top The body top tag is not a self-closing tag. The content placed between the opening and closing of this tag is moved to the top of the body tag. When something is passed...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util Buffer
Using Liferay Util Buffer The buffer tag is not a self-closing tag. The content placed between the opening and closing of this tag is saved to a buffer and its output is assigned to the Java...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util Get URL
Using Liferay Util Get URL The get URL tag scrapes the URL provided by the url attribute. If a value is provided for the var attribute, the content from the screen scrape is scoped to that...
Published Date: May 9, 24, 6:53 PM
Using Liferay Util HTML Bottom
Using Liferay Util HTML Bottom The HTML bottom tag is not a self-closing tag. Content placed between the opening and closing of this tag is moved to the bottom of the tag. When something is passed...
Published Date: May 9, 24, 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, 24, 6:53 PM
Sharing Localized Messages
Sharing Localized Messages As you work on an application you might have multiple modules, each of which with its own language keys. Instead of maintaining various language properties files in...
Published Date: May 9, 24, 6:53 PM
Aggregating Resource Bundles
Aggregating Resource Bundles When working with a module that shares localized messages, the bnd header must specify the resource bundles you want to associate with the module. Liferay provides a...
Published Date: May 9, 24, 6:53 PM
Developing a JavaScript Application
Developing a JavaScript Application
Published Date: May 9, 24, 6:53 PM
React Component Utilities Reference
React Component Utilities Reference Several useful tools are available to help you build high-performance components and applications in Liferay DXP using React: frontend-js-react-web module ...
Published Date: May 9, 24, 6:53 PM
Client Extension Reference
Client Extension Reference Liferay Self-Hosted Liferay SaaS Liferay PaaS Liferay 7.4 You can find code examples for all types of client extensions in liferay-portal Frontend Client Extensions ...
Published Date: Jun 21, 24, 3:41 PM
Working with Client Extensions
Working with Client Extensions Liferay Self-Hosted Liferay SaaS Liferay PaaS Liferay 7.4 Using client extensions, you can extend Liferay without deploying OSGi modules. Just like traditional...
Published Date: May 9, 24, 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, 24, 6:53 PM
Scoping Configurations
Scoping Configurations In Liferay DXP, you can set an application's configuration to different levels of scope: System, Instance, Site, or Portlet. For example, if you create an application to have...
Published Date: May 9, 24, 6:53 PM
Setting and Accessing Configurations
Setting and Accessing Configurations You can use Liferay's configuration framework to add a settings UI for a MVC Portlet. See the Example Portlet Then, follow these steps: Download and unzip...
Published Date: May 9, 24, 6:53 PM
Dependency Injection
Dependency Injection
Published Date: May 9, 24, 6:53 PM
Listening for Messages
Listening for Messages You can listen for messages sent to any registered Message Bus destination, whether it's built-in to DXP/Portal, defined by third-parties, or created by you. Messages sent to...
Published Date: May 9, 24, 6:53 PM

Capabilities

Product

Contact Us

Connect

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