Tor zur flüssigen Welt
von Markus Eisele

Service-Infrastrukturen ermöglichen den Aufbau von dienstbasierten Anwendungslandschaften in Unternehmen. Unter dem Namen AquaLogic hat Bea eine Produktpalette im Angebot, welche bei der technischen Umsetzung helfen soll. Den Nutzerzugang stellt dabei die AquaLogic User Interaction Suite zur Verfügung.

Was schon vor mehreren Jahren, mit so großen Namen wie Google, Altavista und Yahoo! seinen Anfang genommen hat, ist seit längerem Alltag. Portale sind Jedermann ein Begriff. Weniger bekannt ist da schon die Tatsache, dass die meisten Unternehmen sich Portale ebenfalls nutzbar gemacht haben. Als zentrale Zugänge für Mitarbeiter, Kunden und Partner unterstützen diese Geschäftsprozesse und erleichtern die tägliche Zusammenarbeit aller Beteiligten. Informationen stehen mit Portalen endlich genau dort zur Verfügung, wo sie benötigt werden. Gesammelt, übersichtlich und an zentraler Stelle. Damit werden Probleme gelöst, die aus der Menge der individuell und getrennt voneinander entwickelten webbasierten Anwendungen der vergangenen Jahre entstanden sind. Dazu gehören technische Fragestellungen, wie beispielsweise Single-Sign-On, Personalisierung, Multi-Client-Fähigkeit, zentrales Nutzer-, Rollen- und Rechtemanagement aber auch nicht technische Dinge, wie Usability und ein einheitliches Design der Anwendungen. Alle namhaften Infrastrukturanbieter haben natürlich für genau diese Probleme ein entsprechendes Produkt im Portfolio. Im Zuge des Hypes um serviceorientierte Architekturen (SOA) bestücken die Hersteller aktuell ihre Produkte zunehmend mit Funktionen rund um den Service Gedanken. Bei Bea begann das Mitte letzten Jahres mit dem Start der neuen Produktfamilie „AquaLogic“. Kurze Zeit später wurde bekannt, dass Bea den Portalanbieter Plumtree übernehmen wird. Bis dahin kursierte die Ankündigung über ein serviceorientiertes Portal unter dem wagen Namen „AquaLogic Portal“ nur durch diversen Presseerklärungen. Nun ist es geschafft. Die Plumtree Application Suite G6 wurde unter dem offiziellen Namen AquaLogic User Interaction Suite (ALUI) in die Bea Produktfamilie aufgenommen.

Aqualogic User Interaction

Bereits der Begriff Suite lässt ahnen, dass es sich hier um mehr als nur ein Produkt handelt. Das neue Portalpaket aus dem Hause Bea ist wohl der komplexeste Teil der neuen Familie. Es besteht aus insgesamt acht einzelnen Teilen (Vgl. Abb. 1). Die Einzelteile wurden von Bea in drei verschiedenen Bundles mit unterschiedlichen fachlichen Schwerpunkten zusammengefasst und können als Bundles lizenziert werden.

Die technische Basis für alle Teile bildet die so genannte Foundation. Unter dem Namen Aqualogic Interaction bildet es die Portalbasis für alle Erweiterungen. In der Basis sind die grundlegenden Verwaltungs- und Administrationsfunktionalitäten, Sicherheitsfunktionen, Nutzer-, Gruppen- und Rechteverwaltung, Webserviceintegration und die komplette Darstellungslogik des Portals untergebracht. Ebenfalls enthalten sind die Portaldatenbank und der Automation-Service. Letzterer stellt Scheduling Funktionen für Portaljobs und Synchronisationsaufgaben bereit. Der Image-Service rundet die Basis ab. Er sorgt für die einheitliche Auslieferung von Grafikdaten einer Portalinstallation.

Auf dieser technischen Basis setzten alle Ergänzungspakete auf. Aqualogic Interaction Collaboration reichert die Basisinstallation um Funktionen für Teamzusammenarbeit an. Für die Erstellung der eigentlichen Portalinhalte ist der Aqualogic Interaction Publisher zuständig. Beim Publisher dreht sich alles um das Webpublishing. Das Paket stellt Werkzeuge bereit, mit denen auch Nicht-Techniker Inhalte für das Portal erstellen können. Darunter finden sich webbasierte Rich-Text-Editoren und Freigabeworkflows. Aber auch die zeitliche Steuerung von Inhalten und eine Templateverwaltung. Unternehmensprozesse lernt das Portal dank des Aqualogic Interaction Process. Das Process Paket stellt alle notwendigen Erweiterungen für das webbasierte Modellieren von Prozessen und die entsprechende Portalintegration. Dazu gehören beispielsweise vorgefertigte Inbox- und Aufgaben Portlets. Komplett wird eine Portalinstallation aber erst mit einer übergreifenden Suchfunktionalität. Diese am besten über alle im Portal befindlichen Objekte und den angebundenen Inhalt der registrierten Remote-Server. Dies erlaubt die Aqualogic Interaction Search. Standard Inhalte, wie beispielsweise Kalender, Umfragen, Ergebnissreports oder ähnliches können mithilfe des Aqualogic Interaction Studios direkt im Portal erstellt werden. Das Studio bietet dafür zumeist vorbereitete Inhalte, die von den Nutzern nur noch entsprechend zu konfigurieren sind. Detaillierte Auswertungen über Nutzer- und Laufzeitverhalten des Portals bekommt man durch die Funktionen des Aqualogic Interaction Analytics Paket. Den Abschluss bilden die Aqualogic Interaction Integration Services. Unter diesem Namen verbergen sich Funktionen zur Integration von Standardanwendungen. Dazu zählen beispielsweise Office, Notes, CMS/DMS Werkzeuge wie Documentum, SAP oder auch eine Siebel-Anbindung. Für viele Backendsysteme stellt Bea in diesem Paket bereits eine vorbereitete Integrationslösung zur Verfügung. Drittanbieter ergänzen das Angebot weiter.

Installation und Konfiguration

Bei so vielen Funktionen bekommt man richtig Lust aufs ausprobieren. Leider gestaltet sich das nicht so einfach, wie man das von Bea bisher gewohnt ist. Um an eine Testversion der Aqualogic User Interaction Suite zu kommen muss man sich gehörig anstrengen. Weder auf den Bea Downloadseiten, noch woanders wird man fündig. Wer es ausprobieren möchte, der kommt nicht Drumherum eine direkte Anfrage beim Hersteller zu starten. Das ist zwar bei Bea nicht wirklich schwierig, dennoch ist es nicht jedermanns Sache, immer einen Vertriebler auf den Fersen zu haben. Daher bleibt alternativ leider nur ein schneller, erster Blick mithilfe von Flash-Demos und Whitepapern, die auf den Webseiten von Bea zur Verfügung gestellt werden. Für Probierwillige Techniker ist das ungewohnt und schon allein deswegen vergleichsweise unschön. Darüber hinaus werden die bereitgestellten Informationen der Komplexität der Produktsuite einfach nicht gerecht. Wagt man den Kontakt zum Hersteller trotzdem und ist dann vielleicht sogar in den Besitzt der Installations-CD gekommen, kann man sich direkt an die Arbeit machen. Die Installation gestaltet sich grundsätzlich unkompliziert. Sind die Systemvoraussetzungen erfüllt, kann man sie unter Windows 2003 Server oder RedHat Linux starten. Nachdem die Basisinstallation steht, können je nach Bedarf die Erweiterungspakete hinzu installiert werden. Jedes einzelne kommt mit einer sehr ausführlichen Installations- und Bedienungsanleitung. Unangenehm ist lediglich die Tatsache, dass die notwendigen Datenbanken nicht automatisch anlegt werden. Da muss ein wenig Vorarbeit geleistet werden. Darüber hinaus ist jeweils ein eigener Datenbanknutzer je Erweiterung anzulegen. Was bei einer Einzelplatzinstallation vollkommen überflüssig und unnötig komplex erscheint, wird verständlich wenn man sich komplexere Portalszenarien vorstellt. Hier ist es durchaus angebracht nicht nur über separate Datenbanken sondern auch über separate Hardware für die einzelnen Portalerweiterungen nachzudenken. Die modulare Bauweise der User Interaction Suite ermöglicht ein nahezu beliebiges Aufteilen der einzelnen Pakete auf unterschiedliche Hardware. Mithilfe dieser Möglichkeiten kommt man bei einer User Interaction Installation auch nicht so schnell an die Grenzen der Systemleistungsfähigkeit, wie das bei anderen Produkten der Fall ist. Man muss sich erst bei großen bis sehr große Installationen Gedanken über andere Skalierungsmaßnahmen, wie Loadbalancing oder Clusterbildung machen. Bei einer kombinierten Installation auf einer einzigen Maschine wird daher aber auch deutlich mehr Hardware notwendig. Unter 2GB Speicher, gut 10GB Plattenplatz sowie einem leistungsfähigen Prozessor lohnt sich das Anschauen kaum. Sind die Einzelteile schließlich fertig konfiguriert, kann man direkt über http://<server>:<port>/portal/server.pt das Portal aufrufen und sich mit dem Administrator-Nutzer anmelden. Die Portaloberfläche wirkt insgesamt sehr aufgeräumt. Eine umfangreiche Online Hilfe bietet Unterstützung bei den ersten Schritten im neuen System.

Von Remote-Servern und Konzepten

Dabei ist die sehr guten Modularität der User Interaction Suite nicht der einzige Grund, einen detaillierteren Blick auf das Produkt zu werfen. Das wird erst klar, wenn man einen Blick auf den Portalmarkt wirft. Hier findet sich eine nahezu unüberschaubare Menge von Produkten. Jeder große Infrastrukturhersteller hat bereits sein eigenes Portal und die OpenSource Produkte kommen noch dazu. Die meisten Portalprodukte verstehen sich als Frameworks. Die Grundlage bilden JSR-168 konforme Portlet-Container. Sie stellen die Basis zur Entwicklung von Portalanwendungen. Über ergänzende Application Programming Interfaces (API) können beliebige Portal-Services (Personalisierung, Userprofile, Look-And-Feel, et cetera) angesprochen werden. Fachliche Logik wird zumeist über andere Javaobjekte (EJB, Java-Klassen, et cetera) angesprochen. Alle notwendigen Komponenten werden meist direkt auf dem System deployed, welches bereits das Portalframework trägt. Hier wird sehr gerne vergessen, dass ein Portal eigentlich nur für die Präsentationslogik und Oberflächensteuerung zuständig ist. Aus Gründen der Verteilbarkeit und Ausfallsicherheit sollte Anwendungslogik daher immer gekapselt auf separaten Anwendungsservern laufen. Bei den verfügbaren Portalprodukten gibt es für diese Kapselung unterschiedliche Ansätze. Da reicht die Palette der verfügbaren Umsetzungen von der Implementierung eigener „Portal Services“ (SAP Enterprise Portal) bis hin zu gar keiner Frameworkunterstützung. Vielfach bleibt es der Fähigkeit der Softwarearchitekten überlassen, eine saubere Trennung der Schichten auch bei der Verwendung von Portalen zu gewährleisten.

Die Aqualogic User Interaction Suite umgeht diese Problematik auf elegante Weise. Auch wenn das Portal sich ebenfalls als Framework versteht, enthält es grundsätzlich selber keine Portalanwendungen. Nicht einmal einen Portlet-Container findet man in der Basisinstallation. Die Portalanwendungen laufen auf Remote-Servern und werden über das Portalframework eingebunden. Dabei können beliebige Systeme auf J2EE bzw. Microsoft .NET Basis als Remote-Server verwendet werden. Für beide Plattformen existiert ein Aqualogic Interaction Development Kit (IDK). Das IDK liefert eine an Portlet-Container angelehnte Programmierumgebung, auf dessen Basis man Portlets entwickeln kann. Über die bereitgestellten APIs kann direkt auf das Portalsystem und entsprechend verfügbare Informationen zugegriffen werden. Das IDK und das Portal kommunizieren über Webservices miteinander. Eine spezielle Implementierung sichert sorgt für eine anforderungsgerechte Geschwindigkeit. Ein Umweg wie beispielsweise über WSRP muss bei der Verteilung von Portalanwendungen auf unterschiedliche Systeme nicht mehr gegangen werden. Mithilfe des IDK werden beliebige Anwendungsserver auf einmal zu Portalsystemen. Diese können dann Inhalte, Funktionalität und Oberflächen für das Portal bereitstellen. Durch dieses Vorgehen gestaltet sich auch die Migration von bestehenden Anwendungen in Portale vergleichsweise einfach. Durch die Tatsache, dass die mit dem IDK entwickelten Portalanwendungen eigentlich nur standard Webanwendungen sind, können diese auch sehr einfach und im Rahmen etablierter Prozesse von Entwicklungs- zu Test- und schließlich in Produktionssysteme transportiert werden. Ein aufwändiges Handling von proprietären Portalarchiven entfällt. Nur für die im Portal verwendeten Metadaten muss noch etwas mehr Aufwand betrieben werden..

Portaladministration und Entwicklung

Sowohl Nutzung wie auch Administration des Portals erfolgt über den Webbrowser. Dies gelingt mit dem Internet-Explorer uns mit dessen freien Mitbewerber wie beispielsweise Firefox. Dabei zeigen sich alle sehr gutmütig ob der Menge an kompforterhöhendem JavaScript und anderen Oberflächenspielereien wie PopUp Fenster, Warte- und Bestätigungsdialoge. Über den Navigationspunkt „Administration“ kann ein entsprechend berechtigter Nutzer alle Einstellungen am Portal verändert. Eine detaillierte Veränderung des Aussehens und anderer Konfigurationsparameter kann darüber hinaus auch im Dateisystem der Portalinstallation erfolgen. Zur Unterscheidung von nutzergruppenbasierten Portalinhalte kommen sogenannte Experience Definitions zum Einsatz. Auf der Grundlage diverser Informationen der Nutzerprofile oder ähnlichem kann der entsprechende Inhalt bereitgestellt werden. Die kleinste Entwicklungseinheit ist auch bei diesem Produkt wieder das Portlet. Es wird auf Seiten platziert und steht dann den Nutzern von Communitys zur Verfügung. Dank des IDK kann ein Portlet auf nahezu jedem beliebigen Remote Server implementiert sein. In Java kann ein einfaches Portlet, welches in einer JSP Seite umgesetzt ist, etwa so aussehen:

<%
//Referenz auf das IDK holen
IPortletContext portletContext = PortletContextFactory.createPortletContext(request, response);
IPortletRequest portletRequest = portletContext.getRequest();
String settingKey = "PortletEntry";
           
            // Wert aus Request lesen
String settingValue =
portletRequest.getSettingValue(SettingType.Portlet, settingKey);
%>
Sag <%=settingValue%> !

Nachdem eine Referenz auf das IDK erstellt wurde, kann direkt auf die verfügbaren Portalobjekte zugegriffen werden. Damit das so einfach funktioniert, muss lediglich die Bibliotheksdatei des IDK in WEB-INF/lib verfügbar sein und ein paar Konfigurationen in der web.xml vorgenommen werden. Auf den Entwicklerseiten von Plumtree kann man sich über eine Eclipse Integration und weitere Details zu den Themen Entwicklung, Performance, Sicherheit, Logging und Debugging von Portlets informieren. Neben Portlets können noch Content Services und Identity Services mit dem IDK erstellt werden. Die Content Services repräsentieren die Anbindung an die Portalsuche. Über die Identity Services wird der Zugriff auf Nutzerinformationen möglich. .

Zwei Portale – eine Zukunft ?

Mit der neuen Produktfamilie haben viele neue Funktionen in das Bea Portfolio Einzug gehalten. Dabei darf man nicht vergessen, dass es für die ein oder andere bereits seit längerem schon vergleichbare Produkte bei Bea zu finden gab. Das gilt auch für die Portale. Das schon Weblogic Portal ist aktuell in der Version 9.2 als BetaVersion für ausgewählte Kunden verfügbar. Hier bleibt die Weiterentwicklung also nicht stehen. Im Gegenteil scheinen die Bemühungen um die Weblogic Plattform 9 auf Hochtouren zu laufen. Ganz offiziell hat Bea zum weiteren Weg der beiden Portale bereits eine Roadmap ausgegeben (vgl. Kasten Infos im Web). Die Pläne beinhalten dabei im ersten Quartal diesen Jahres eine verbesserte Zusammenarbeit der beiden Produkte. In 2007 soll dann die Verfügbarkeit eines einheitlichen User Experience Frameworks erreicht sein. Parallel dazu laufen unter den Codenamen „Runner“, „Holland“ und „Graffiti“ die Entwicklungen drei neuer Produkte an. „Runner“ entspricht wohl der Weiterentwicklung des IDK. Hier soll, laut Presseerklärung, Funktionalität für Composite Applications eingebaut und die Portalisierung von bestehenden Webanwendungen vereinfacht werden. Grundsätzlich soll die zeitlicht begrenzte, parallele Weiterentwicklung der beiden Produkte einen Migrationspfad für Bestandskunden auf beiden Seiten aufzeigen. Durch kleinere Schritte aufeinander zu wird erst nach und nach aus den separaten Produkten ein neues, größeres werden.

Fazit

Was als einzelnes Portalprodukt zu Beginn der neuen Produktfamilie angekündigt wurde, ist eine komplette Produktsuite geworden. Allein das komplexe Wissen über Zusammenhänge der einzelnen Pakete und die recht umfangreiche Installation sind vermutlich schon Grund genug, warum Bea die Software nicht einfach so als Testversion zum Download anbietet.
Allerdings wird daher der Versuch einen ersten Überblick über Funktionen und Mehrwerte zu bekommen auch nicht vereinfacht. Weder die Aufteilung in separate Pakete und Bundles, noch die Namensgebung wecken irgendwelche Erinnerungen an bereits verfügbare Bea Produkte. Die verfügbaren Whitepaper und Produktbeschreibungen sind recht wenig technisch und geben daher nur begrenzt verwertbare Infos her. Wer sich von all dem nicht abschrecken lässt und dennoch einen Blick auf die ALUI riskiert wird mit neuen Erkenntnissen belohnt. Die Konzepte des Portals sind durchaus als gelungen zu bezeichnen.
Zu diesem Zukauf kann man Bea daher durchaus gratulieren. Schade ist es, dass der Portal-Hype der vergangenen Jahre durch Diskussionen rund um Service-Infrastrukturen abgelöst wurde. Da löst das beste Portalprodukt alleine keine Begeisterungsstürme mehr bei den Kunden aus. Zum Glück steht die AquaLogic Produktfamilie ja als Ganzes unter dem SOA Stern. In diesem Licht findet vielleicht auch die User Interaction Suite den Weg zu neuen Kunden. Sowohl Technologie als auch die Konzepte lösen eine Menge der Probleme, über die klassische Portalinstallationen in der Vergangenheit immer wieder gestolpert sind.

Links und Literatur