thumbnail
Roselaine Marques | 25 Aug 2021

When we generate a React Widget project for Liferay DXP from Yeoman (liferay-js template), you can see, in the scaffolding, we have the CSS file in assets/css folder with the style.css file (set to load on our portlet-header, in the package.json).  It is common, in a native React application to have the CSS separated by components. So to have the CSS separated by components in a Liferay...

16347
0
thumbnail
David H Nebinger | 27 Aug 2021

Introduction I posted two blog posts this week, and each of them had a particular drawback - lack of cluster coordination. The first blog post on cluster-enabled upgrade processes introduced using an @Reference dependency upon a specific Release version, the idea being that the component shouldn't start unless that version was available. When the upgrade process would run on the cluster...

12359
1
thumbnail
David H Nebinger | 24 Aug 2021

Just a quick one... I've just updated my Log Persister project for Liferay 7.3. You can find it under the 7.3 branch: https://github.com/dnebing/log-persist/tree/7.3 For those that aren't aware, I introduced the Log Persister here: https://liferay.dev/blogs/-/blogs/liferay-7-dxp-making-logging-changes-persistent Normally Liferay does not persist logging. If you make any changes in...

12099
2
thumbnail
Fabian Bouché | 06 Sep 2021

This blog post is the second of a series I've just started. The previous one dealt with some recipes to deal with backend REST APIs integration, using Swagger Codegen, Retrofit and showcasing Portlet's 3.0 PortletAsyncContext in order to manage web service calls in an asynchronous fashion, so as to reduce the footprint of our code on the Thread Pool. This second blog post now deals with...

15148
0
thumbnail
Fabian Bouché | 31 Aug 2021

With this first blog, I'd like to start a series about application integration. Quite often, I encounter projects where Liferay must integrate with some backend services. There are lots of integration patterns. Integration may happen at browser or server side. There are many development frameworks available (React, Vue, MVC Portlet, Liferay Faces, Spring MVC Portlet...) Communication with...

13595
0
thumbnail
Roselaine Marques | 23 Aug 2021

When we generate an Angular Widget project for Liferay DXP from yeoman (liferay-js template), you should realize in the scaffolding, there are assets/{static_folder}/{static_files} and the src/{modules_and_clases}. So at the moment, all static’s file should be put into the assets folder, where you can find for example the CSS file in assets/css folder with the style.css file (set to load on our...

11466
0
thumbnail
David H Nebinger | 24 Aug 2021

I recently was helping a client with an upgrade process and that had run into a little problem... A few of the model hints were not updated on some of the columns in their Service Builder services and, as we all know, Service Builder will not ensure the columns are changed in a production environment (well, actually any environment where the schema.module.build.auto.upgrade property is not set...

11103
3
thumbnail
Anne Durey | 18 Aug 2021

En aquel momento era diciembre de 2020 y la pandemia ya nos había dejado casi un año sin encuentros presenciales de nuestra comunidad en todo el mundo. En esa ocasión realizamos el primer encuentro de desarrolladores Liferay en español en LATAM en línea, pensando que las restricciones se encontraban cerca de su fin y que pronto podríamos encontrarnos presencialmente en alguna parte de la...

10387
0
thumbnail
Ashley Yuan | 18 Aug 2021

The new installers and IDE 3.9.4 ga5 has been made available.  Community Download https://liferay.dev/-/ide-installation-instructions Customers Download https://customer.liferay.com/downloads/-/download/liferay-workspace-with-developer-studio-3-9-4 https://customer.liferay.com/downloads/-/download/liferay-workspace-installer-2021-08-09 Release highlights Installers...

11251
0
thumbnail
Roselaine Marques | 17 Aug 2021

For big and complex applications and take advantage from some parameter and configuration as a Liferay Application, the best way to have total control over your application is by transforming manually  a native Angular Application to a Liferay Angular Widget. You need your Angular application and a new Angular widget generated by liferay-js from scratch. Requirements: Node, Yeoman and NPM...

14488
2
thumbnail
David H Nebinger | 16 Aug 2021

A really quick post to share something important with you React + Clay developers out there... A recent update to Clay had a breaking internal change. If after deploying your React portlet and you try to place it on the page and you get errors in the JS console like: liferay-amd-loader | Errors returned from server for require( ["my-module@1.0.0"] ): "Missing dependency...

15569
3
thumbnail
Jamie Sammons | 04 Nov 2021

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 GA3 and Liferay Commerce 4.0 GA3 run the following: docker run -it -p 8080:8080 liferay/portal:7.4.2-ga3 For more...

29860
4
thumbnail
Roselaine Marques | 14 Sep 2022

IMPORTANTE: esta publicación de blog se realizó con Liferay Portal versión 7.4.1 GA 2, que puede ser usada como guía, pero debe adaptarse a su propia versión (archivo CartItem.js y dependencias de .npmbundlerrc y package.json si es necesario). NOTICE: This blog  post has Spanish and  English version. Cuando empieces a crear un sitio web de comercio electrónico con ...

14963
0
thumbnail
Roselaine Marques | 14 Sep 2022

IMPORTANT: this blog post was done with Liferay Portal version 7.4.1 GA 2, which you can use as your guide, but you need to adapt to your own version (CartItem.js file and dependencies from .npmbundlerc and package.json if needed).  NOTICE: This blog  post has Spanish and English version. When you start to build an e-commerce website with Liferay Commerce, you...

17116
3
thumbnail
David H Nebinger | 06 Aug 2021

Introduction A client asked me to build a React portlet for them and I was like, "Oh Yeah!" I mean, it's been a while since I built a React portlet and tooling has really changed a lot since then, so I was really looking forward to this new task. So without further ado, I'm just going to dive right in... Creating the Module Okay, so this is still Liferay and still OSGi, so we're going to be...

28707
3
thumbnail
David H Nebinger | 19 Jul 2021

Introduction So I was recently asked to help build a custom Liferay docker image for a client and there were some specific requirements such as: Should not contain hard-coded credentials, those will be available as environment variables. Should be a single image that can be used in every environment, DEV, UAT and PROD. Now these kinds of things can be challenging to do if you were to...

15964
0
thumbnail
Neil Griffin | 14 Jul 2021

Each year at about this time I try to post the download stats for the Liferay Faces project. I am pleased to report that downloads for the Liferay Faces project hit another all time high back in September of 2020, and held fairly steady until January of this year (2021). Downloads seem to take a dip after the holidays, so perhaps that's why we saw a drop-off in February. Since then,...

11024
0
thumbnail
David H Nebinger | 12 Jul 2021

Introduction Recently I asked some of my teammates for ideas about what to blog about next. Most of the time I take my inspiration from different clients I work with or questions that come up on the Liferay Community channels, but lately the well has seemed kind of dry. So I went fishing for suggestions. My friend Andrew Betts, who happens to be in the Liferay DXP Cloud (DXPC) team suggested...

15279
0
thumbnail
Olaf Kock | 09 Jul 2021

If you’ve ever looked at a Liferay workflow implementation and its scripts, you might have seen workflowContext being referenced in the scripts that are executed in the individual tasks and states. I’ve recently had my first scripting contact with Workflow, and wanted to look at this context, and what it can do for me. Digging a bit, you’ll find out that workflowContext is a Map<String,...

10556
0
Prasanna Katti | 09 Jul 2021

After doing multiple rounds of search over the internet about using IN parameter in Custom SQL in Liferay but without any satisfactory results, I assumed probably this could never be achieved in Liferay. However a few days back when I was looking at the code I thought about a tweak that could be applied if we have a use case that pertains to the mentioned scenario. I applied the same and lo! It...

12701
0