Introduction Goodbye MySQL? No, don't worry, Liferay isn't dropping support for MySQL, don't start panicking just yet. Liferay has been transitioning new PaaS and new/existing SaaS systems from MySQL to PostgreSQL 16, so the cloud-based systems are saying goodbye to MySQL and saying hello to PostgreSQL... This blog post isn't really about announcing the change, I ...
Recently, a number of customers encountered build failures in their JavaScript-based Liferay portlets or modules. The issue was the result of a node module version not being pinned or specified. My colleague, Dave Nebinger provides full details of this issue in this article. The issue highlights the importance of locking versions of node modules and what can happen when you do not....
So I wasn't planning on writing this blog today, but it is hitting a lot of people and I'm sure there's going to be a slew of reported issues on this, so I felt I should get the word out... If you are doing a build that involves the Liferay JS npm bundler, you may get errors such as: node:internal/fs/utils:344 throw err; ^ Error: ENOENT: no such file or directory,...
A real quick one today so everyone is aware. The next releases of Liferay, DXP 2025.Q1 and CE GA 134, will be built using JDK 17. This means that JDKs 8 and 11 will not be an option at all. You'll get class version exceptions at startup if you try using the JDK8 or JDK11 runtimes. The only option is going to be using the JDK17 or JDK21 runtimes. This will apply to...
Introduction For a long time now Private Pages have been deprecated by Liferay... From a platform perspective, they are really a pain. A site can be made up of two different kinds of pages, public and private, they [potentially] have different host urls, but generally they are confusing to new Liferay adopters (we often hear questions like "What's the difference...
Esta entrada de blog también está disponible en Español It has been 7 years since the beginning of this second season of the LUGSpain community and four since the last article we published reviewing the year. We think it is a long time and we have to get back into the habit to see if we are going where the community wants us to go. This year we have done 9...
This blog entry is also available in English Han pasado 7 años del comienzo de esta segunda etapa de la comunidad LUGSpain y cuatro desde el último artículo que publicamos haciendo un repaso de lo que había sido el año. Creemos que es mucho tiempo y hay que recuperar la costumbre para ver si vamos por dónde la comunidad quiere. En este año hemos hecho 9...
Esta entrada de blog también está disponible en Español Working with Java applications that use native thread pools, one of the limitations we may encounter is the lack of built-in tools to monitor the behavior of these pools. Although libraries such as ThreadPoolExecutor in Java offer powerful functionalities to manage threads, they do not directly...
This blog entry is also available in English Cuando trabajamos con aplicaciones Java que utilizan pools de hilos nativos, una de las limitaciones que podemos encontrar es la falta de herramientas integradas para monitorizar el comportamiento de estos pools. Aunque bibliotecas como ThreadPoolExecutor en Java ofrecen potentes funcionalidades para gestionar...
Hello everybody, A small post to explain how to create a vanilla javascript native fragment in Liferay in few minutes. I want to create a small animation for this winter... a Snow Flakes animation on all of my site pages. For this, I decide to create a fragment and put it on the master page of my site. I simply go on github and find this repository ...
Download options Liferay Portal and Liferay Commerce share the same Bundle and Docker image. To get started using either Liferay Portal or Liferay Commerce, choose the best download option suited for your environment below. Docker image To use Liferay Portal 7.4 GA129: docker run -it -p 8080:8080 liferay/portal:7.4.3.129-ga129 Bundles and other download options ...
Well, we've done it! We've updated finally from React 16 to React 18 at the portal level. In DXP 2025.Q1 and CE GA 134*, Liferay is no longer going to be based on React 16. This is significant since React 16 was first released in 2017, so we were pretty far behind on an update there. Granted React 18 was released in 2022, so it's really only about 2 years behind, but there was...
Earlier this year, Liferay announced our Java Evolution beginning with runtime support for Java 17 and 21. As we wrap up the year, we wanted to share an update on how our evolution is going and what you can expect in 2025. Culminating in the migration to Jakarta EE 10, the year ahead is exciting and challenging as we open up new technologies that have never been available to our...
Just a quick one today... So I'm working on some Client Extensions and wanted to see the impact that deployment would have across virtual instances. FWIW, CX are only supposed to affect the virtual instance they are deployed to. But, normally to access different virtual instances, you need different virtual hosts (domain names) in order to access the different...
Background As the saying goes, the only constant in life is change and while I’m sure Heraclitus wasn’t thinking about software development back in 500 BC, it applies equally as well to Liferay Development I’ve been using Liferay for over 15 years and have had the privilege of seeing many important changes in how we use Liferay for building solutions. Some of them have...
This article provides the necessary steps to configure Cross-Cluster Replication (CCR) for Elasticsearch with Liferay on a local machine. By following this guide, you’ll simulate the behavior of CCR with Liferay for testing purposes. CCR is only available in the DXP version, and an LES license is necessary to enable this feature. In a typical Liferay DXP/search engine setup,...
So this past summer a number of my Office Hours sessions had to be cancelled. All I really said at the time was that I was sorry about cancelling the sessions and that I was busy traveling. And you should know, both of these statements were true. But I didn't really explain why I was traveling... So, here it is - Liferay is getting back in the Liferay Training business....
Many weeks ago I blogged about how I could no longer add images to blogs and this was preventing me from publishing some entries I had which needed screen shots... We have since fixed that issue, but I'm not sure I shared what happened. As it turns out, on liferay.dev we were following security best practices by creating and configuring a Role with necessary permissions,...
Just a quick one today that will hopefully save you some time if you hit this yourself... I'm updating a workspace to use JDK-21 (it was previously working fine w/ JDK-11). When I started Tomcat, I immediately got an error: 10-Oct-2024 15:36:08.783 SEVERE [main] org.apache.catalina.startup.HostConfig. deployDescriptor Error deploying deployment descriptor ...
When developing custom code or portlets, it's common to work with sensitive data like passwords, client secrets, or API keys. For example, when you're configuring OAuth2 to authorize a request in your code, you will need to provide an ID and a secret. A common pitfall is to hardcode this information directly into your codebase, which can lead to significant security vulnerabilities,...
Showing 1 to 20 of 3,087 entries.