Blogs

RSS

Entries with Products Liferay Portal 7.1 .

RSS
thumbnail
David H Nebinger | 27 Jul 2022

Introduction You may have seen my blog Setting Up JNDI in Liferay 7.4 which I posted to explain how to do a JNDI lookup. The code works, I assure you, but there's one group of developers that blog didn't serve: Spring Portlet Developers. Whether you are developing using PortletMVC4Spring and Spring 5, or you are developing using Spring Portlet MVC under an older ...

3502
thumbnail
David H Nebinger | 22 Jul 2022

Introduction I've been working with a client to upgrade their Spring portlet wars to Liferay 7.4. And the update is kind of big as we're upgrading Spring, changing to PortletMVC4Spring (needed for Spring 5), ... They have a large number of Spring portlet wars, but in reviewing the code I noticed that each of the wars had duplicate Spring services defined into the Spring...

3719
thumbnail
David H Nebinger | 07 Feb 2022

Introduction I've worked with clients that, for one reason or another, needed to change their database platform. This ask has increased with the move to DXPCloud and MySQL database. I'm not sure there's a well defined plan for how to migrate a Liferay database, so I thought I'd blog about it. Now, if you know anything about me, you know I'm a planner and I create (sometimes intricate)...

10112
thumbnail
David H Nebinger | 26 Jan 2022

Introduction I was recently polling my coworkers looking for new blog ideas, and Filipe Melo asked about Websockets. I haven't seen any other documentation or blogs about building Websocket solutions for Liferay, so I figured this would be an interesting challenge. Websockets was introduced to provide a full duplex and realtime client/server communication path between remote clients and your...

11522
thumbnail
David H Nebinger | 12 Jan 2022

Introduction So recently I completed a database upgrade from Liferay EE 6.1 up to Liferay DXP 7.4. It was actually pretty straightforward and I didn't encounter any significant blockers. I did however learn some stuff along the way and I thought I'd share those details here so you will be able to do your next Liferay DB upgrade in the same way. Note that although I'm specifically including...

9751
thumbnail
David H Nebinger | 11 Jan 2022

Introduction So I wrote https://liferay.dev/blogs/-/blogs/extending-liferay-osgi-modules five years ago targeting Liferay 7.0. A lot has changed since then. Liferay Gradle Workspace plugin has seen numerous updates. Gradle has seen an update or two as well. Recently when asked to assist a client who wanted to extend Liferay's Journal Article service, I started by recommending they look...

7870
thumbnail
David H Nebinger | 10 Nov 2021

Introduction In a recent blog I explained how to create a React-based portlet within your Liferay Gradle Workspace by using the js-widget Blade template which in turn uses the Yeoman Liferay JS Generator to create the project. (Wow, that was a mouthful ;-) ) In this way, you can have your Liferay Gradle Workspace take care of building your complete suite of Liferay modules, the...

8147
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...

8632
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...

8025
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...

16574
thumbnail
David H Nebinger | 18 Jun 2021

IntroductionAs many folks know, I'm known for telling people not to look inside the Liferay database itself. It's not always clear what is what in the DB and Liferay has a lot of code around retrieving and updating data that you likely will not get completely right if you were to update the DB directly.I typically end with "Always, always use the Liferay API for your data needs..."And, if...

9033
thumbnail
David H Nebinger | 21 Jun 2021

So some time ago I wrote the Cluster Details marketplace plugin. Basically you drop this guy into all of your Liferay clusters and you get a nifty little control panel that tells you details about the cluster, all of the nodes which have joined the cluster and it identifies who the leader of the cluster is at the moment:Not super complicated, but it is a handy little tool to identify details...

8276
thumbnail
David H Nebinger | 18 May 2021

IntroductionHistorically developers have always wanted to be able to control site creation.It's not that Liferay admins are untrusted or anything like that. It is really more the case where setting up a new site can get complicated and the steps to create the site could be quite long. A site may have initial documents, web contents (with structures and templates), pages to create and populate...

8281
thumbnail
David H Nebinger | 27 Apr 2021

Introduction One of the great advantages I have being known in the community is really the opportunity to meet, talk and work with talented developers and teams. Recently the team at ACSoftware announced in the Liferay Community Slack they were working on a new Liferay development tool, and I was fortunate enough to work with them on evaluation and testing. As it is just released, I...

8949
thumbnail
David H Nebinger | 01 Feb 2020

Just a quick one this morning... So I'm working on a project for 7.1. With my new love of the target platform, I decide I'm going to enable the 7.1 target platform for my DXP project. Everything seems to work fine until I deploy the portlet jar. That's when I get the following during deployment: 2020-02-01 08:40:06.324 ERROR...

9769
thumbnail
David H Nebinger | 31 Jan 2020

Introduction So I get finished which the previous blog, Visiting DynamicQuery, and I shared it with my team. I'm always kind of happy when I get a new blog post done, so I share it with everyone I can think of. The first comment I got was from my friend and teammate, Shane Merriss: Hey Dave, thanks for the blog post, I’ll be able to share it with my client since we use it in a...

9176
thumbnail
David H Nebinger | 30 Jan 2020

Introduction If you've used any Liferay entities or ServiceBuilder custom entities, you've likely run into a situation where you've needed to perform a custom query to get a set of results that are outside of what the normal methods provide. So you've had to use a DynamicQuery in order to make that happen. Or perhaps you've needed to perform batch operations on entities and...

10368
thumbnail
David H Nebinger | 30 Jan 2020

One thing I sometimes see is using a given Liferay feature the wrong way in order to do something. Take delivering content to the right users. Liferay actually has a bunch of ways to accomplish this kind of thing. First we have taxonomy. Using vocabularies, categories and tags, you can apply taxonomy to your assets and then, through an asset publisher or search filter, for...

7705
thumbnail
David H Nebinger | 23 Jan 2020

I did an informal poll on the Liferay community Slack channel recently: I was actually kind of surprised by the majority of votes for the "What is the target platform?" option. So, inspired by the results of the poll, I'm going to answer the question, What is the Target Platform? The Target Platform's Roots So the phrase, "Target Platform", is really a Liferay-only name...

8894
thumbnail
David H Nebinger | 12 Jan 2020

Classic Liferay Localization Handling Any developer who has been around for awhile will have some knowledge of how Liferay handled localization for the entities... In your service.xml file where you normally just have a column type of String, you would also have an additional attribute set, localized="true". With this addition, your model classes getters and setters change...

8888

Showing 1 to 20 of 27 entries.