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
Building a Time Off Requester
Building a Time Off Requester Liferay 7.4+ With Liferay Objects, you can build entire applications without writing code or deploying modules. Here, you'll create a Time Off Request application...
Published Date: Apr 26, 2024 8:55 PM
Accessing Custom Fields With Expandos
Accessing Custom Fields With Expandos When you need additional fields in your application, you can always add them in your service model definition and re-run Service Builder. This adds new columns...
Published Date: Apr 26, 2024 8:55 PM
Asset Framework
Asset Framework The asset framework is behind many of Liferay's most powerful features. It provides tools for displaying and interacting with any type of content and data. For example, if you build...
Published Date: Apr 26, 2024 8:55 PM
Expando
Expando Accessing Custom Fields with Expando
Published Date: Apr 26, 2024 8:55 PM
Cache
Cache :file: ../../landingpage_template.html :file: cache/landing.html
Published Date: Apr 26, 2024 8:55 PM
Enabling Assets
Enabling Assets Many of Liferay's applications (e.g. Blogs, Documents and Media, Message Boards, etc.) are asset-enabled out of the box. You can publish assets with the Asset Publisher widget or...
Published Date: Apr 26, 2024 8:55 PM
Implementing an Item Selector
Implementing an Item Selector Item selectors are pop-up dialogs for selecting assets, such as documents, videos, or users. By configuring the item selector's criteria and defining its usage, you...
Published Date: Apr 26, 2024 8:55 PM
Service Builder
Service Builder An application without reliable business logic or persistence isn't much of an application at all. Unfortunately, writing your own persistence code often takes a great deal of time....
Published Date: Apr 26, 2024 8:55 PM
Data Scopes
Data Scopes :file: ../../landingpage_template.html :file: data-scopes/landing.html
Published Date: Apr 26, 2024 8:55 PM
Adding Model Hints
Adding Model Hints Once you've used Service Builder to define model entities, you may want to refine how users enter that data. Model hints specify entity data restrictions and other formatting....
Published Date: Apr 26, 2024 8:55 PM
Configuring Global Service Options
Configuring Global Service Options A service's global options apply to all its entities. Here are the options: Dependency Injector Package path Multiversion concurrency control Namespace...
Published Date: Apr 26, 2024 8:55 PM
Business Logic with Service Builder
Business Logic with Service Builder Once you've generated model, persistence, and service code with Service Builder, you can begin adding business logic. Entities generated by Service Builder...
Published Date: Apr 26, 2024 8:55 PM
Defining Entity Columns
Defining Entity Columns An entity's columns represent its attributes. These attributes map table fields to Java object fields. Here you'll examine the sample project from Understanding and...
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
Modifying Database Fields in Development
Modifying Database Fields in Development As you develop an application, you might need to add fields to your database. This is a normal process of iterative development: you get an idea for a new...
Published Date: Apr 26, 2024 8:55 PM
Defining Entity Relationships
Defining Entity Relationships Relationships between database entities or Java objects are necessary for most applications. Take Liferay's Message Boards application as an example. Each Message...
Published Date: Apr 26, 2024 8:55 PM
Sorting Entity Instances
Sorting Entity Instances Often, you want to retrieve multiple instances of a given entity and list them in a particular order. The service.xml file lets you specify the default order of your...
Published Date: Apr 26, 2024 8:55 PM
Invoking a Service Locally
Invoking a Service Locally Service Builder services that are deployed to DXP/Portal can be invoked from other classes in the same JVM. These services are local to the classes. Service Builder...
Published Date: Apr 26, 2024 8:55 PM
Portlet IDs
Portlet IDs Below is a listing of the portlet IDs for the default portlets in Liferay DXP. You can use these IDs to embed portlets in your theme's sitemap. Collaboration PortletID...
Published Date: Apr 26, 2024 8:55 PM
Portlet 3.0 API Opt In
Portlet 3.0 API Opt In A portlet must specify version 3.0 to opt in to the Portlet 3.0 API. The 3.0 Portlet API version can be specified in the following ways. Standard Portlet @PortletApplication...
Published Date: Apr 26, 2024 8:55 PM
Service Builder Basics
Service Builder Basics Using Service Builder helps you learn it. You'll use it to learn the basics: Generating Model, Persistence, and Service Code: Define a basic model, generate code from it,...
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
Generating Model, Persistence, and Service Code
Generating Model, Persistence, and Service Code Service Builder makes it easy to define models and generate model, persistence, and service code for them. You'll experience this by defining a model...
Published Date: Apr 26, 2024 8:55 PM
Understanding and Extending Generated Classes
Understanding and Extending Generated Classes Service Builder generates both tables for your entity and model, persistence, and service classes for it. Here you'll examine generated classes for an...
Published Date: Apr 26, 2024 8:55 PM
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...
Published Date: Apr 26, 2024 8:55 PM
Upgrade Processes
Upgrade Processes :file: ../../landingpage_template.html :file: upgrade-processes/landing.html
Published Date: Apr 26, 2024 8:55 PM
Portlet Descriptor to OSGi Service Property Map
Portlet Descriptor to OSGi Service Property Map Here's a map of portlet XML descriptor values to OSGi service properties for publishing OSGi Portlets. The properties centralize and simplify portlet...
Published Date: Apr 26, 2024 8:55 PM
Upgrading Your Database Tables
Upgrading Your Database Tables Liferay DXP 7.4 U10+ or Liferay Portal 7.4 GA14+ An upgrade of your application may require making changes to your database tables. Liferay's Upgrade framework makes...
Published Date: Apr 26, 2024 8: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: Apr 26, 2024 8:55 PM
Developing a Java Web Application
Developing a Java Web Application :file: ../landingpage_template.html :file: developing-a-java-web-application/landing.html
Published Date: Apr 26, 2024 8:55 PM
Reference
Reference :file: ../../landingpage_template.html :file: reference/landing.html
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
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...
Published Date: Apr 26, 2024 8:55 PM
Reference
Reference :file: ../../../landingpage_template.html :file: reference/landing.html
Published Date: Apr 26, 2024 8:55 PM
Reference
Reference :file: ../../../landingpage_template.html :file: reference/landing.html
Published Date: Apr 26, 2024 8:55 PM
Liferay Development
Liferay Development Liferay's development platform makes developers faster and more efficient by providing a baseline set of features to build upon. Rather than start from scratch, you can start...
Published Date: Apr 26, 2024 8:54 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: Apr 26, 2024 8:55 PM
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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
Liferay Faces Portal
Liferay Faces Portal Liferay Faces Portal is distributed in a .jar file. You can add Liferay Faces Portal as a dependency for your portlet projects to use its Liferay-specific utilities and UI...
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
Sharing Localized Messages
Sharing Localized Messages As you work on an application you might have multiple modules, each of which has its own language keys. Instead of maintaining various language properties files in...
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
Portlet Preferences
Portlet Preferences You can give administrators and users a way to customize a portlet with portlet preferences. Portlet preferences can be added to any MVC Portlet to give users a UI to access and...
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM
Geomap Charts
Geomap Charts A Geomap Chart lets you visualize 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...
Published Date: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 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: Apr 26, 2024 8:55 PM

Capabilities

Product

Contact Us

Connect

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