Buch-Tipp

Java unter Lotus Domino

(Link zum Artikel: http://www.it-republik.de/jaxenter/buchtipps/000637)

Know-how für die Anwendungsentwicklung

  • Autor/in: Thomas Ekert
  • Verlag: Xpert.press
  • Seiten: 803
  • erschienen: 2006
  • Preis: € 49,95
  • ISBN: 978-3-540-22176-0

Thomas Ekert richtet sein Buch "Java unter Lotus Domino" an Java-Programmierer, die neu in der Domino-Welt sind. Das im Jahr 1989 in der Version 1.0 ausgelieferte Urgestein der Groupwareplattformen unterstützt in der aktuellen Version 7 eine beeindruckende Bandbreite von Technologien. Neben der engen Integration eines J2EE Stacks (mit WebSphere) und der Möglichkeit, Notes-Daten nativ in DB2-Datenbanken abzuspeichern, kann der Entwickler neben der ursprünglichen Formelsprache und dem Basic-Dialekt LotusScript auch Java für die Entwicklung seiner Anwendungen nutzen.

Das Buch stellt sich der Herausforderung, dem Leser eine angemessen tiefe Einführung in die der Plattform zugrunde liegenden Konzepte zu geben und gleichzeitig den Umgang mit den dafür bereitgestellten Java-Klassen zu erläutern. Im ersten Teil beschreibt der Autor auf rund 110 Seiten die grundlegenden Domino-Bausteine wie Dokumente, Masken, Ansichten, Agenten, Datenbanken etc. Die erfolgreiche Nutzung dieser Konzepte durch die bereitgestellten Java-Klassen ist Gegenstand des zweiten Teils des Buches, der circa 500 Seiten umfasst. Teil 3 beschäftigt sich abschließend auf etwa 120 Seiten mit der Integration eines J2EE-Servers, der Erstellung von Servlets und JSP-Seiten sowie der Projektentwicklung und dem Debugging von Domino-Anwendungen.

Insbesondere im zweiten Teil gelingt es dem Autor, dem Leser unterschiedliche Nutzungsszenarien und Herausforderungen bei der Nutzung der Klassenbibliotheken mithilfe von Praxisbeispielen nahe zu bringen. Da Java erst in einer späteren Version in Domino integriert wurde, stellen viele Java-Klassen Wrapper für unterschiedliche Notes-native C++-Objekte und Konzepte dar. Für den erfahrenen Java-Programmierer ergibt sich daraus oft die Notwendigkeit, beim Umgang mit den entsprechenden Java-Objekten bestimmte Eigenheiten der zugrunde liegenden nativen Bibliotheken zu kennen. Notes-spezifische Themen wie etwa das Caching von Domino-Objekten, die Behandlung von Domino-Objekten in Multithreading-Umgebungen und das notwendige "Recycling" von Objekten geben dem Leser hier ein Gefühl für die Herausforderungen bei der Nutzung der Java-Klassen.

Neben einer Beschreibung der Java API stellt der Autor Lösungen für praxisnahe Problemstellungen mithilfe ausführlich beschriebener Code-Fragmente vor und weist an vielen Stellen auf Fallstricke und Domino-Eigenheiten hin. Die detaillierte Darstellung einzelner Klassen mit nahezu allen Methoden, erweitert um entsprechende Tipps und Tricks, machen diesen Teil des Buches zu einem hilfreichen Nachschlagewerk. Dem Leser sei hier empfohlen, sich anhand der Code-Beispiele einen Überblick über das entsprechende Nutzungsszenario zu verschaffen und das Thema dann vor einer geplanten Implementierung nochmals zu vertiefen.

Positiv anzumerken sind die praxisrelevanten Hinweise zu den Themen Debugging, Test und Logging im hinteren Teil des Buches. Die mögliche Verteilung des Codes hinter unzähligen Agenten, Aktionen und Masken lassen den Java-Entwickler oft mit einem Schaudern auf gewachsene Domino Anwendungen blicken. Auch der erfahrene Domino Entwickler mag hier die eine oder andere Anregung übernehmen können.

Insgesamt überzeugt das Buch durch den umfangreichen Erfahrungsschatz des Autors, die vielen Hinweise auf verborgene Fallstricke und die gut dokumentierten Praxisbeispiele. Eine Auslagerung der sehr umfangreichen und hilfreichen Kommentare zu API-Methoden in einen Referenzteil o.Ä. hätte den Lesefluss bei einem derart umfassenden Thema erleichtert. Dem Domino-Einsteiger aus der Java-Welt kann dieses Buch (evtl. ergänzt um das frei verfügbare Red Book der IBM [Domino Designer 6: A Developer's Handbook]) genauso empfohlen werden, wie dem Domino Experten, der sich verstärkt mit Java im Domino Umfeld auseinandersetzt. Dabei wird dem Thema Java mit der der zurzeit im Beta-Test befindlichen Notes-Version 8 weitere Bedeutung zukommen: basiert der neue Client doch vollständig auf der Java-basierten Eclipse Rich Client Platform.

von Stephan Wilczek

Kommentare