Anwendungen für Lotus Notes

Lotus Expeditor: Managed Clients entwickeln

08.02.2008 von Martin Kuppinger
Mit dem IBM Lotus Expeditor gibt es ein neues Entwicklungswerkzeug für IBM Lotus Notes ebenso wie die Eclipse-Plattform und andere Anwendungen. Das Tool liegt in der Version 6.1.1 vor und unterstützt eine Reihe von Anwendungstypen.

Im Kern steht dabei das Konzept des „managed clients“, also einer Anwendung, die von zentraler Stelle verteilt werden kann. Das Konzept des managed clients spielt bei IBM eine zentrale Rolle, wobei die wichtigsten Plattformen für die Ausführung solcher Clients einerseits Eclipse und andererseits der IBM Workplace als Portal-Server sind.

Ein wichtiges Merkmal des Lotus Expeditor ist der Ansatz, Komponenten gezielt vom Server auf den Client zu übernehmen und dabei dennoch die Verwaltbarkeit der Applikation sicherzustellen. Damit kann die Performance von Anwendungen ebenso wie die Leistungsfähigkeit der Anwendungsschnittstellen optimiert werden, ohne die Kontrolle über die Anwendungen zu verlieren oder aufwändige Client Lifecycle Management-Lösungen nutzen zu müssen.

Einsatzbereiche und Konzept

Mit dem Expeditor lassen sich unterschiedliche Arten von Anwendungen erstellen. Im Kern handelt es sich dabei um

Diese Anwendungen können unterschiedliche Funktionen wie die Zugriffe auf Datenbanken, die Nutzung von Web Services oder das Messaging umfassen.

Das Toolkit selbst setzt auf dem Eclipse Framework auf und kann optional auch im Zusammenspiel mit den Entwicklungswerkzeugen aus der IBM Rational Suite genutzt werden. Welche Umgebung benötigt wird, hängt vor allem von den Anwendungen ab, die realisiert werden sollen.

Die Expeditor-Plattform

Neben dem Expeditor Toolkit, auf das im Schwerpunkt eingegangen wird, gibt es noch weitere Komponenten. Diese werden für die Ausführung der Anwendungen benötigt. Hier gibt es folgende Komponenten:

Mehrschichtig: Das grundlegende Konzept der Lotus Expeditor-Plattform mit Anwendungen, Client- und Server-Komponenten (Quelle: IBM).

Alternativ sind aber auch Lotus Notes 8 und Lotus Sametime 7.5.x als Clients einsetzbar. Diese stellen die gleiche Funktionalität in der Laufzeitumgebung bereit. Der eigentliche Lotus Expeditor Client ist also nur erforderlich, wenn keine Lotus Notes-Umgebung zum Einsatz kommt.

Die Lotus Expeditor Client-Plattform

Die Client-Plattform stellt eine Reihe spezieller Dienste für den Client bereit, die in der Entwicklungsumgebung genutzt werden können. Dazu zählen

Damit wird eine umfassende Funktionalität bereitgestellt, um Anwendungen zu realisieren, die zwar lokal ausgeführt werden, aber von zentraler Stelle aus verwaltet werden können.

Lotus Expeditor Toolkit

Um Anwendungen für den Lotus Expeditor und die anderen unterstützten Systeme zu realisieren, benötigen Sie das Lotus Expeditor Toolkit. Dabei handelt es sich um eine Zusammenfassung von Werkzeugen für die Entwicklung, das Debugging, den Test, die Paketierung und die Verteilung von Client-Anwendungen, die mit lokalen Client-Diensten arbeiten. Die Entwicklung wird von Assistenten unterstützt.

Für die Automatisierung von Entwicklungsaktivitäten lassen sich Ant-Scripts (Another neat tool) einsetzen, um beispielsweise den Build-Prozess von Anwendungen zu automatisieren.

Für die Entwicklung von Client-Anwendungen auf Basis von Lotus Notes 8 und Lotus Sametime 7.5.1 werden spezielle vordefinierte Zielumgebungen unterstützt. Damit wird der Konfigurationsaufwand für diese Zielumgebungen minimiert, die ja auch keinen speziellen Client benötigen.

Entwicklungsumgebungen

Die Nutzung des IBM Lotus Expeditor Toolkits erfolgt aus einer Reihe von Entwicklungsumgebungen heraus, wobei immer auf Basis von Eclipse, aber eben in sehr unterschiedlichen Varianten, gearbeitet wird. Die Werkzeuge sind

Etwas lästig ist dabei, dass mit Lotus Notes 8 zwar eine Eclipse-Umgebung geliefert wird, aber in der Version 3.2.0. Diese reicht also als Basis für das IBM Lotus Expeditor Toolkit nicht aus. Daher müssen Sie auf Systemen, auf denen Sie beide Anwendungen nutzen wollen, zwei unterschiedliche Eclipse-Versionen einrichten.

Die einfachste Variante für die Entwicklung ist die Verwendung des so genannten Java EE Project Bundle von Eclipse, das im Rahmen des IBM Callisto Simultaneous Release-Projekts bereitgestellt wird. Damit erhalten Sie Eclipse 3.2.2 und WTP 1.5.3 und können beide Anwendungen direkt nutzen. Zusätzlich erforderlich ist außerdem noch eine lokal installierte JRE (Java Runtime Engine).

Einrichtung des Toolkits

Für die Installation ist zunächst die verwendete Eclipse-Plattform zu starten. Dabei kann es sich beispielsweise um die des Callisto-Projekts handeln. Wählen Sie In der Eclipse-Umgebung Help – Software Updates – Find and Install aus.

Im ersten Dialogfeld wählen Sie aus, ob Sie vorhandene Funktionen aktualisieren oder neue Funktionen einrichten wollen. Da das Lotus Expeditor Toolkit noch nicht installiert ist, muss die Option Search for new features to install gewählt werden.

Erweiterung: Neue Funktionen für Eclipse lassen sich mit Hilfe eines Assistenten einrichten.

Im dann angezeigten Dialogfeld selektieren Sie die Option New Local Site und geben das Verzeichnis mit dem Namen Expeditor_Toolkit_install an. Dieses Verzeichnis wird in die Liste der vorhandenen Quellen für die Installation aufgenommen.

Auswahl der Komponenten

Danach wird diese Installationsquelle automatisch von Eclipse analysiert. Die verschiedenen verfügbaren Module werden ermittelt und anschließend angezeigt. Im nun sichtbaren Dialogfeld können Sie die zu installierenden Module auswählen.

Selektion: Die zu installierenden Komponenten von Lotus Expeditor können ausgewählt werden.

Je nachdem, welche Art von Anwendungen Sie realisieren wollen, müssen nun verschiedene der Module gewählt werden. Die Basis ist das Lotus Expeditor Toolkit selbst, das Sie generell benötigen. Es kann mit dem Desktop-Client, mit Lotus Notes und mit Lotus Sametime genutzt werden.

Die Lotus Expeditor Development Runtimes VM stellt eine Ausführungsumgebung für den Test von Anwendungen bereit. Dazu gibt es die passende Runtime-Unterstützung. Um Anwendungen auch außerhalb von Lotus Notes oder Lotus Sametime testen zu können, sollten die beiden Komponenten installiert werden.

Schließlich gibt es noch die Unterstützung für „Einheiten“, die sich unterhalb des Knotens device findet. Diese ist nur erforderlich, wenn Anwendungen für mobile Systeme realisiert werden sollen.

Die nächsten Schritte

Nachdem Sie dem Lizenzabkommen zugestimmt haben, folgt noch einmal eine Übersicht der ausgewählten Komponenten, bevor die eigentliche Installation startet. Dabei werden, wenn man nur die Unterstützung für lokale Systeme einrichtet, rund 220 MByte an Daten kopiert. Die Installation gibt noch einige Warnmeldungen wegen nicht korrekt digital signierter Komponenten aus, diese können Sie aber ignorieren.

Konfiguration: Die Grundeinstellungen des Lotus Expeditor Toolkit müssen nach dem ersten Start angepasst werden.

Nach dem Neustart von Eclipse erhalten Sie einen Konfigurationsdialog für die Konfiguration des Lotus Expeditor Toolkit. Dort sind kaum Anpassungen erforderlich, Sie können die Standardwerte weitgehend übernehmen. Falls je Anwendungen für mobile Geräte entwickelt werden sollen, muss die Testumgebung auf Lotus Expeditor für Einheiten angepasst werden. Außerdem sollte im unteren Bereich die Option Konfigurieren des Toolkits beim ersten Öffnen eines Arbeitsbereichs versuchen gewählt werden, um das Dialogfeld nicht immer wieder angezeigt zu bekommen. Für das Zusammenspiel mit Lotus Notes sind allerdings Anpassungen erforderlich, auf die weiter unten noch eingegangen wird.

Grundeinstellungen

Im nun folgenden Schritt lassen sich die Grundeinstellungen für das Toolkit noch weiter anpassen. Diese finden Sie bei Window – Preferences und dort im Knoten Client Services. Direkt bei diesem Knoten wählen Sie die Parameter aus, die beim ersten Start gesetzt werden müssen. Hier kann beispielsweise zwischen der Desktop- und der Device-Variante gewechselt werden.

Basisparameter: Die Grundeinstellungen für das Lotus Expeditor Toolkit können über die Präferenzen angepasst werden.

Weitere Einstellungen finden sich bei Entwicklung. Dort passen Sie insbesondere die Einstellungen für die Entwicklungsziele an. Man kann sich beispielsweise darauf beschränken, Expeditor-Anwendungen für Lotus Notes 8 zu realisieren und nur dieses Ziel auswählen. Grundsätzlich gilt aber, dass man die Einstellungen im Regelfall zunächst beibehalten kann.

Positiv ist, dass man jederzeit zu den Grundeinstellungen zurückwechseln kann. Damit bleiben die Risiken von Konfigurationsänderungen überschaubar und man kann zunächst auch erst einmal ein bisschen mit den Auswirkungen verschiedener Einstellungen experimentieren.

Ein erstes Projekt

In der Eclipse-Entwicklungsumgebung wird mit Projekten gearbeitet, die in Arbeitsbereichen gespeichert werden. Um ein solches Projekt mit Hilfe des Expeditor Toolkits zu erstellen, muss die Option File – New Project ausgewählt werden.

Assistiert: Neue Projekte mit Eclipse und dem Lotus Expeditor Toolkit können mit Hilfe von Assistenten erstellt werden.

Für die Erstellung eines Projekts muss ein Assistent ausgewählt werden. Die Assistenten für die Expeditor-Projekte finden sich unterhalb des Eintrags Client Services. Dort gibt es unter anderem das Client Services-Projekt, das ein vollständiges und umfassendes Projekt darstellt.

Das Fragment-Projekt erlaubt dagegen die Entwicklung ausgewählter Komponenten, das Webprojekt spezifisch von Web-Anwendungen mit Servlets oder JSPs (Java Server Pages). Außerdem können vorhandene Projekte konvertiert werden, um die Anwendungen für das Konzept der Managed Clients anzupassen.

Die Konfiguration des Projekts

Der folgende Schritt ist die Konfiguration des Projekts. Dazu müssen der Name und der Speicherort festgelegt werden. Da es sich praktisch immer um ein Java-Projekt handelt, können auch noch die Ordner für die Quelldateien und die ausführbaren Dateien erzeugt werden.

Details: Zu jedem Projekt müssen Detailinformationen wie die IDs der Plug-Ins festgelegt werden.

Danach müssen Details für die Generierung des Plug-Ins, das als Ergebnis des Projekts erzeugt werden soll, konfiguriert werden. Für die ersten Testprojekte kann mit den Standardeinstellungen gearbeitet werden. Bei einer intensiveren Nutzung des Lotus Expeditor Toolkits sollten die hier zu konfigurierenden Parameter allerdings genau festgelegt und standardisiert genutzt werden.

Zielfestlegung

Nun folgt die Festlegung des Entwicklungsziels – der vielleicht wichtigste Schritt bei der Definition eines Projekts. Bei Ziel ist normalerweise Standardziel ausgewählt, also eine Anwendung für den Lotus Expeditor-Client. Falls aber Anwendungen für Lotus Notes 8 oder Lotus Sametime entwickelt werden sollen, muss das Ziel angepasst werden. Dazu sind allerdings, wie weiter unten noch erläutert wird, vorab zusätzliche Anpassungen erforderlich.

Zielauswahl: Das Entwicklungsziel, also die Laufzeitumgebung für die Anwendungen, muss explizit ausgewählt werden.

Abhängig vom gewählten Ziel werden die erforderlichen Plug-Ins ausgewählt und angepasst. Nachdem dieser Schritt gemacht ist, kann noch entschieden werden, dass die Anwendung auf Basis einer Schablone arbeiten soll. Standardmäßig werden drei Schablonen für unterschiedliche Typen von Anwendungen bereitgestellt. Für diese können noch zusätzliche Parameter festgelegt werden, bevor das Projekt generiert wird. Auch hier gilt aber, dass man zumindest zu Beginn mit den Standardwerten gut arbeiten kann.

Spezifische Anpassungen für Lotus Notes 8 - JRE

Für das Zusammenspiel mit Lotus Notes 8 sind noch einige zusätzliche Anpassungen erforderlich. Die erste ist die Konfiguration der Lotus Notes JRE (Java Runtime Environment) für die Nutzung mit dem Toolkit. Damit können die spezifischen Funktionen von Lotus Notes genutzt werden.

Java: Die JRE von Lotus Notes muss als zusätzliche JRE bei den bereits installierten Laufzeitumgebungen hinzugefügt werden.

Die Konfiguration der JRE erfolgt bei den Präferenzen, also Window – Preferences. Dort finden sich die Einstellungen unter Java – Installed JREs. Je nach Systemkonfiguration sind hier bereits eine oder mehrere JREs installiert.

Notes-JRE hinzufügen

Mit Add kann eine neue JRE hinzugefügt werden. Als Typ der JRE wird der Wert Standard VM beibehalten. Der Name sollte als Notes 8 VM definiert werden. Anschließend muss das Verzeichnis der JRE angegeben werden. Die Notes 8-JRE findet sich in

<Installationsverzeichnis>\framework\rcp\eclipse\plugins\com.ibm.rcp.j2se.win32.x86.DR4-200707311521\jre

Umfassend: Die Konfigurationsparameter für die JRE und die Liste der speziellen Systembibliotheken für die JRE.

Nach der Auswahl werden die bereits vorhandenen Systembibliotheken für die JRE erkannt. Dabei gibt es eine Vielzahl spezifischer Bibliotheken für Lotus Notes, die für das Zusammenspiel mit dem Lotus Expeditor Toolkit benötigt werden.

Weitere Einstellungen

Nach dem Neustart von Eclipse kann bei den Einstellungen nun noch die Konfiguration des Toolkits angepasst werden. Bei den Präferenzen wird dort wieder der Bereich Client Services ausgewählt. Mit der Schaltfläche Konfigurieren kann das Dialogfeld, das nach der Installation des Lotus Expeditor Toolkits bereits angezeigt wurde, wieder aufgerufen werden.

Notes-spezifisch: Für das Zusammenspiel zwischen Lotus Notes und dem Lotus Expeditor Toolkit sind spezielle Anpassungen erforderlich.

Hier muss als Testumgebung nun Lotus Notes 8 gewählt werden. Entsprechend wird die Zielposition für diesen Typ von Anwendungen modifiziert. Außerdem muss als VM nun Notes 8 VM angegeben werden. Anschließend können die entsprechenden Projekt geöffnet werden. Auf die Entwicklung von Anwendungen mit dem Lotus Expeditor wird demnächst in einem gesonderten Artikel noch näher eingegangen. (mha)