Warum jetzt der richtige Zeitpunkt ist, um Ihren Tech-Stack in Liferay zu aktualisieren

Liferay DXP ist seit vielen Jahren eine bewährte und verlässliche Plattform für Unternehmensportale und digitale Geschäftsprozesse. Traditionell werden Anwendungen und Erweiterungen in Liferay auf Basis von Java als Portlets mit Java Server Faces (JSF)/JSP und OSGi-Modulen entwickelt. Dieses Vorgehen hatte lange Zeit Vorteile, führt jedoch zunehmend zu Herausforderungen.

Die zentrale Frage für Software-Architekten und Entscheider lautet daher: Weiterhin auf Java-Technologien setzen – oder auf moderne Technologien wie React oder Angular im Frontend und Spring Boot im Backend umsteigen?

In diesem Artikel zeigen wir Ihnen:
•    Die Herausforderungen der Java-basierten Entwicklung in Liferay.
•    Warum moderne Technologien eine bessere Alternative sind.
•    Welche Schritte Unternehmen jetzt unternehmen sollten, um ihre Architektur zukunftssicher zu gestalten.

Herausforderungen Java-basierter Technologien in Liferay 

Der Java-Portlet-Standard, auf dessen Basis Anwendungen mit Hilfe von JSF oder JSP entwickelt werden können, ist seit vielen Jahren das zentrale Rückgrat von Portalanwendungen. Entwickler profitieren von der engen Integration der APIs, die eine schnelle und effiziente Implementierung von Anwendungen ermöglicht.

Änderungen in Liferay erfordern jedoch Anpassungen im Java-Code. Diese enge Kopplung führt dazu, dass Upgrades von Liferay auf neue Versionen mit erheblichem Aufwand verbunden sind. Updates waren früher selten und mit weiteren Anpassungen verbunden, so dass dies nicht als problematisch angesehen wurde. 

Die Zeiten ändern sich: Gab es früher Updates von Liferay alle 2-3 Jahre sind aktuell quartalsweise Updates der Stand der Technik. Dies ermöglicht eine höhere Flexibilität und eine schnellere Reaktion auf sich ändernde Kunden- und Marktanforderungen.

Wartungsaufwand und Entwicklerproduktivität

Java-basierte Technologien wie JSF sind komplexe Technologien, die fundierte Java- und Liferay-Kenntnisse erfordern. Nach unserer Erfahrung benötigen neue Entwickler daher oft eine lange Einarbeitungszeit, bevor sie produktiv arbeiten können.

Auch hier ändern sich die Zeiten: Der Trend geht zu entkoppelten Anwendungen, die über klare Schnittstellen kommunizieren. So bauen Entwickler heute Webanwendungen mit JavaScript-Frameworks wie React oder Angular im Frontend oder bspw. Spring Boot im Backend. Java-basierte Technologien haben sich zwar bewährt, werden aber bei Neuimplementierungen immer seltener eingesetzt - entsprechendes Know-how ist daher deutlich schwerer zu finden.

Verfügbarkeit von Entwicklern

Entwickler bevorzugen moderne, dynamische Technologien, die sich schnell weiterentwickeln, anstatt ältere, komplexe Frameworks wie JSF – was diese Technologien attraktiver für sie macht.

Frontend-Entwickler mit modernen Technologien wie React oder Angular sind daher viel leichter zu finden als Entwickler, die Java und Portaltechnologien beherrschen.

Liferay als Plattform für moderne Architekturen

Liferay hat mit dem Client-Extension-Framework eine Möglichkeit entwickelt, Liferay DXP zu erweitern, ganz ohne den Kern der Plattform zu verändern. Es basiert auf einer Decoupled Architecture, die es ermöglicht, Erweiterungen außerhalb der Liferay-Instanz zu betreiben.

Liferay arbeitet seit einigen Jahren an der Unterstützung dieser Architektur, die essenziell für den Betrieb in der Cloud ist. Sie umfasst Client Extensions, das Object Framework und das Extension Environment für das Backend.

Dabei kümmert sich Liferay weiterhin um die Kernfunktionen wie Berechtigungen, Web-Inhalte, Navigation oder Dokumente. Entwickler können sich auf die Umsetzung der Kernfunktionen konzentrieren und greifen über APIs auf Liferay-Funktionen zu.

Die so entwickelten Erweiterungen laufen als eigenständige Services oder Webkomponenten und sind nicht mehr direkt in den Liferay-Kern integriert.

Vorteile von Client Extensions im Vergleich zu traditionellen Erweiterungen

Traditionelle Liferay Plugins (z. B. OSGi Module) haben oft Abhängigkeiten zu internen Liferay APIs oder Services. Wenn sich diese APIs in einer neuen Liferay-Version ändern, müssen Entwickler nach einem Upgrade den Code prüfen und anpassen, neu kompilieren und das Deployment durchführen.

Client Extensions laufen dagegen unabhängig von Liferay und müssen bei einem Liferay-Upgrade nicht migriert werden. Sie nutzen standardisierte Schnittstellen wie REST, GraphQL und OAuth2/OpenID Connect für die Authentifizierung.  Liferay kann somit aktualisiert werden, ohne dass diese Erweiterungen angepasst werden müssen, sie sind in der Regel auch nach einem Liferay-Upgrade voll funktionsfähig.

Updates von Liferay sind dadurch wesentlich schneller und kostengünstiger umsetzbar und ermöglichen, an der hohen Innovationsgeschwindigkeit zu partizipieren.

Darstellung: Liferay Client Extensions entkoppeln individuelle Anpassungen

Liferay Client Extensions entkoppeln individuelle Anpassungen

 

Handlungsempfehlungen für Architekten und Entscheider

Die Migration von Java-basierten Anwendungen zum Client Extension Framework ist eine strategische Entscheidung, die gut geplant sein sollte. Ein vollständiger Umstieg erfordert technologische Anpassungen, organisatorische Veränderungen und Investitionen in die Weiterentwicklung der Teams. Doch der Aufwand lohnt sich: Unternehmen, die auf moderne Architekturen setzen, profitieren von höherer Flexibilität, besserer Wartbarkeit und schnelleren Innovationszyklen. 

Für bestehende JSF-Anwendungen sollte geprüft werden, ob eine schrittweise Migration möglich ist, um Risiken zu minimieren. Bei einem neuen Projekt sollte direkt auf eine entkoppelte Architektur gesetzt werden. 

Liferay erlaubt es, statt der gesamten Anwendung einzelne Bereiche oder Module schrittweise durch React- oder Angular-Komponenten zu ersetzen. So können während der Übergangsphase bspw. JSF- und moderne Frontend-Technologien parallel genutzt werden. Nach und nach werden dann alte JSF-Komponenten durch neue Lösungen ersetzt, bis die Anwendung vollständig modernisiert ist. 

Durch diese iterative Vorgehensweise kann das Risiko minimiert und der Umstieg effizient gestaltet werden. 

Das Team auf die Reise mitnehmen

Der Wechsel auf moderne Frontend-Technologien erfordert nicht nur technische Anpassungen, sondern auch eine Weiterentwicklung der Teams. Das fängt an bei der Bereitstellung von gezielten Schulungen für React, Angular oder Spring Boot – sofern Ihre Entwickler das nicht sowieso schon beherrschen.

Moderne Frontend-Anwendungen erfordern auch eine andere Build- und Deployment-Strategie als klassische Java-Server-Anwendungen. Dabei sollten idealerweise gleich automatisierte Tests, Continuous Integration und Container-basierte Deployments etabliert werden. 

Durch diese Maßnahmen wird sichergestellt, dass die Migration nicht nur technologisch, sondern auch organisatorisch erfolgreich umgesetzt wird.

Melisa_Mujic-1-Dec-10-2024-08-39-46-1333-AM

Kontaktieren Sie uns – wir unterstützen Sie gerne!

Sie möchten Ihre Liferay-Architektur modernisieren oder benötigen Unterstützung bei der Implementierung? Vereinbaren Sie noch heute einen unverbindlichen Beratungstermin.

Fazit

Die Ablösung von Java-Technologien in Liferay wie JSF oder JSP ist eine notwendige strategische Entscheidung, um langfristig wettbewerbsfähig zu bleiben. Die enge Kopplung an Liferay erschwert Updates und Wartung, während moderne Microservice-Technologien eine höhere Flexibilität, bessere Performance und eine schnellere Entwicklung ermöglichen.

Liferay unterstützt diese Architektur bereits aktiv – Unternehmen sollten die Chance nutzen, um ihre Anwendungen zukunftssicher und cloud-ready zu gestalten.

Jetzt ist der richtige Zeitpunkt, um den Wechsel einzuleiten. Gerne unterstützen wir Sie beim Sprung in die Zukunft!

USU ist langjähriger Partner von Liferay und wurde im Februar 2024 als Partner of the Year (EMEA) ausgezeichnet. Gerne unterstützen wir Sie bei der Analyse und Konzeption Ihrer Anforderungen, der technischen Umsetzung und der Migration. 

Artikel teilen:

Weitere interessante Artikel