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
Semantic Versioning
Semantic Versioning Semantic Versioning is a three tiered versioning system for incrementing version numbers based on the degree of API change made in a releasable software component. It's a...
Published Date: Nov 22, 2024 10:50 PM
Specifying Dependencies
Specifying Dependencies You must satisfy all dependencies to compile and deploy a module successfully. After you find the dependency artifacts, add them as dependencies in your Gradle build file....
Published Date: Nov 22, 2024 10:50 PM
Portal Developer Properties
Portal Developer Properties There are Portal Properties that facilitate development. Liferay's portal-developer.properties file includes all of them. The portal-developer.properties file is enabled...
Published Date: Nov 22, 2024 10:50 PM
Fragment Specific Tags and Attributes Reference for Liferay 7.3 and Earlier Versions
Fragment Specific Tags and Attributes Reference for Liferay 7.3 and Earlier Versions Along with standard HTML, CSS, and JavaScript, you can use Liferay-specific tags and attributes to define...
Published Date: Nov 22, 2024 10:52 PM
Using an OSGi Service
Using an OSGi Service Liferay APIs are readily available as OSGi services. You can access a service by creating a field of that service type and annotating the field with @Reference, like this: ...
Published Date: Nov 22, 2024 10:50 PM
Using the Gogo Shell
Using the Gogo Shell The Gogo shell provides a way to interact with the module framework. Among other things, you can Dynamically install/uninstall bundles (modules) Examine package...
Published Date: Nov 22, 2024 10:50 PM
Command Line Gogo Shell
Command Line Gogo Shell If you're in a development environment, you can interact with the module framework locally from the command line. Gogo shell should only be run from the command line in...
Published Date: Nov 22, 2024 10:50 PM
Gogo Shell Commands
Gogo Shell Commands The Gogo shell executes Felix Gogo basic commands and Liferay commands. The Gogo shell is accessible in the Control Panel (recommended) and from the command line. Here are some...
Published Date: Nov 22, 2024 10:50 PM
Reference
Reference 7.4 Breaking Changes 7.3 Breaking Changes 7.2 Breaking Changes Exported Third-Party Packages Portal Developer Properties
Published Date: Nov 22, 2024 10:50 PM
Using Upgrade Processes in Earlier Versions
Using Upgrade Processes in Earlier Versions Liferay DXP 7.4 U10/Portal 7.4 GA14 and Below Follow these steps to create an upgrade process for your module: Open your module's bnd.bnd file, and...
Published Date: Dec 3, 2024 3:10 PM
Logs
Logs The OSGi Log Service Extender enables bundles to provide OSGi logging configuration using embedded properties files META-INF/osgi-logging.properties or META-INF/osgi-logging-ext.properties....
Published Date: Dec 3, 2024 3:11 PM
Advanced Queries
Advanced Queries Service Builder doesn't limit you to elements in service.xml. If simple finders aren't sufficient for getting data out of your application, there are three other ways to make the...
Published Date: Jan 11, 2025 4:12 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: Jan 18, 2025 2:48 AM
Listening for Registration Events
Listening for Registration Events Liferay DXP 2023.Q3/Portal 7.4 GA92 and Below The messaging API supports listening for destination and message listener registration events. Here are some reasons...
Published Date: Jan 18, 2025 2:48 AM
Using Asynchronous Messaging
Using Asynchronous Messaging Message Bus's asynchronous option provides fire and forget behavior; send a message and continue processing without waiting for a response. An asynchronous message is...
Published Date: Jan 18, 2025 2:48 AM
Using Default Synchronous Messaging in Previous Versions
Using Default Synchronous Messaging in Previous Versions Synchronous messaging was removed and is no longer supported for Liferay DXP 7.4 U49/Liferay Portal 7.4 GA49 and above. In default...
Published Date: Jan 18, 2025 2:48 AM
Developing a JavaScript Application
Developing a JavaScript Application
Published Date: Jan 18, 2025 2:48 AM
Using Direct Synchronous Messaging in Previous Versions
Using Direct Synchronous Messaging in Previous Versions Synchronous messaging was removed and is no longer supported for Liferay DXP 7.4 U49/Liferay Portal 7.4 GA49 and above. Direct synchronous...
Published Date: Jan 18, 2025 2:48 AM
Fundamentals
Fundamentals Liferay development projects consist primarily of simple .jar files. These contain a few extra configuration files that make them OSGi modules, but they're easily understandable by...
Published Date: Jan 18, 2025 2:48 AM
Creating Video Shortcut Providers
Creating Video Shortcut Providers Liferay DXP 7.4+ By default, Liferay's external video shortcuts support YouTube, Vimeo, Facebook, and Twitch. However, you can extend this feature to support...
Published Date: May 9, 2024 6:50 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: May 9, 2024 6:52 PM
Building Applications
Building Applications For maximum compatibility with all of Liferay's deployment options, you can combine Liferay's Objects, Client Extensions, and other features and tools to build real-world...
Published Date: May 9, 2024 6:52 PM
Building a Custom Ticketing System
Building a Custom Ticketing System Liferay makes it easy for you to build digital solutions. For example, you can create a custom ticketing application with the styling and features needed for your...
Published Date: May 9, 2024 6:52 PM
Defining a Custom Data Schema
Defining a Custom Data Schema The ticketing application requires custom data fields and selections. You use Liferay objects and picklists to define a custom data schema. Creating Custom Picklists...
Published Date: May 9, 2024 6:52 PM
Deploying a Custom Application
Deploying a Custom Application You can use a custom element client extension to render a JavaScript application as a widget on a Liferay site page. The application is served by Liferay and...
Published Date: May 9, 2024 6:52 PM
Implementing a Documentation Referral System
Implementing a Documentation Referral System The ticketing system can be further enhanced with a documentation referral system. The system searches automatically for relevant documentation based on...
Published Date: May 9, 2024 6:52 PM
Ticket Management with Cron Jobs
Ticket Management with Cron Jobs Use Cron jobs to automate managing tickets. For example, have a job to run at a regular schedule to delete any tickets that have a resolution type of duplicate or...
Published Date: May 9, 2024 6:52 PM
Applying a Custom Theme
Applying a Custom Theme You can use different front-end client extensions to customize the look and feel of your site. Specifically, theme CSS type client extension can be used as an alternative to...
Published Date: May 9, 2024 6:52 PM
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, create a Time Off Request application using...
Published Date: May 9, 2024 6:52 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: May 9, 2024 6:52 PM
Cache
Cache
Published Date: May 9, 2024 6:52 PM
Expando
Expando Accessing Custom Fields with Expando
Published Date: May 9, 2024 6:52 PM
Data Frameworks
Data Frameworks
Published Date: May 9, 2024 6:52 PM
Data Scopes
Data Scopes
Published Date: May 9, 2024 6:52 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: May 9, 2024 6:52 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: May 9, 2024 6:52 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: May 9, 2024 6:52 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: May 9, 2024 6:52 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: May 9, 2024 6:52 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: May 9, 2024 6:52 PM

Capabilities

Product

Education

Contact Us

Connect

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