JSR286 OpenCms Integration

Leveraging OpenCms to a JSF-compliant Portlet Solution

Klassische Softwareentwicklung hat mit Web 2.0 und Content-getriebenen Websites ihre Schwierigkeiten. Redakteure beanspruchen ihr Recht auf Aktualität von Inhalten, Teasern und Texten, deren ein Release-Konzept mit regelmäßigen Deploymentterminen kaum gerecht wird. Die redaktionellen Inhalte und User-generated Content werden daher in einem Content-Management-System gepflegt, während parallel eine oder mehrere Webanwendungen zur Abarbeitung der komplexeren Prozesse existieren. Typischerweise existiert eine Vielzahl von Abhängigkeiten zwischen beiden Systemen, angefangen bei der Navigationsstruktur über Hilfetexte zu AGBs. Die Pflege der Abhängigkeiten erweist sich als mühselig.

Die Abhilfe scheint einfach: Portal-Server bieten eine Integrationsplattform, die sowohl Redakteuren Hoheit über Ihre Inhalte gibt als auch Entwicklern die Möglichkeit, definierte und getestete Versionen von Anwendungen unabhängig davon live zu schalten.

Die uns bekannten Vertreter IBM WebSphere Portal und Liferay bieten allerdings nur mittelmäßige Content-Management-Systeme, sodass kaum wirkliche Begeisterung aufkommt. Wir haben uns daher die Frage gestellt, warum man diese Portlet-Funktionalität (JSR168, JSR286) nicht in das CMS der Wahl, z.B. Coremedia oder OpenCms, integrieren sollte.

Diese Frage konnten wir 2007 erfolgreich mit einer OpenCms/JSR168-Integration beantworten, die seitdem in einer Reihe von Projekten erfolgreich verwendet wird. Mittlerweile beherrscht die Lösung JSR286, sodass es einfach möglich ist, JSF-basierende Anwendungen (wie z.B. Primefaces) in Portlets umzusetzen. Eine Anwendung muss also nicht mehr zwangsweise Portlet oder Standalone-Anwendung sein, sondern wird je nach Kontext entsprechend verwendet.

Zusätzlich kommen dadurch die Möglichkeiten der Ajax-aktivierten Komponentenbibliotheken zur Geltung, z.B. Primefaces, Richfaces, Icefaces.