Open Source im professionellen Einsatz

Lotus Domino auf Linux, ein Überblick

Das Lotus-Prinzip

Lotus Domino ist als komplexe Groupware bekannt, die schon länger auch auf Linux-Servern läuft. Mittlerweile hat IBM das Produkt zu einem Application Server ausgebaut, der offene Standards unterstützt.

Die Softwarefirma Lotus, seit 1995 ein Teil von IBM, unterstützte schon früh Linux. Lotus Domino[1] gibt es seit 1999 für Pinguin-Server - neben den Plattformen IBM I-Series, AIX, Windows, Solaris und anderen. IBM positioniert Domino gegen Microsofts Exchange und nennt Migrationswege. Der Domino-Client, er hört immer noch auf den Namen Notes[2], ist leider weiterhin nur für Windows und den Apple Macintosh verfügbar. Das wird sich auch mit der soeben angekündigten Version 7, die wohl Ende 2004 oder Anfang 2005 auf den Markt kommt, nicht ändern.

Allerdings hat Lotus doch einiges getan, um wesentliche Funktionen von Domino auch von Linux aus nutzbar zu machen. So gibt es mit Domino Web Access einen guten Web-basierten E-Mail-Client. Die aktuelle Version 6.5 unterstützt nun auch Mozilla unter Linux.

Lotus Domino war immer eine relativ offene Umgebung, in der man eigene Anwendungen entwickeln konnte. Anfangs entstanden so Groupware-Addons, bald kamen auch Produkte für die Büroorganisation und anderes hinzu. Ausgehend von einer an Lotus 1-2-3 angelehnten Formelsprache hatte Lotus zunächst mit Lotusscript eine (Visual-)Basic-ähnliche Sprache entwickelt. Ab Release 5 kam Java hinzu, ein Trend, der sich mit Notes/Domino 6 noch verstärkt.

Gleichzeitig verbesserte sich das Zusammenspiel mit dem IBM Websphere Application Server und anderen Anwendungsservern, da für Java-Anwendungen spezifische Domino-Funktionen nutzbar wurden. Das erleichtert einerseits die Verwaltung von Dokumenten und die Integration mit anderen Systemen im Unternehmen.

Lotus Domino 6.5
Server

Hersteller: IBM

Internet: [http://www.lotus.de]

Gattung: Groupware- und Application- Server

Lizenz: Closed Source

Domino Enterprise pro CPU inkl. 1 Jahr Support ca. 3500 Euro

Domino Messaging pro CPU inkl. 1 Jahr Support ca. 1350 Euro

Web Access Collaboration pro User inkl. 1 Jahr Support ca. 130 Euro

Web Access Messaging pro User inkl. 1 Jahr Support ca. 83 Euro

Selbst ein Application Server

Überhaupt ist Lotus Domino heute nicht mehr nur eine Groupware, sondern mehr eine Application-Server-Plattform für kollaborative Anwendungen. Wenn man den Domino-Server in Funktionsbereiche grob unterteilt, dann ergibt sich folgendes Bild:

  • Mittelpunkt ist die (proprietäre) Servertechnologie, die
    Informationen in NSF-Dateien, den Notes-Datenbanken, verwaltet. Auf
    die Datenbanken greifen je nach Implementierung Notes-Clients oder
    Browser zu.
  • Auf die Mailserver-Dienste greifen die Notes-Clients über
    den NRPC (Notes Remote Procedure Call) zu, aber auch
    Standard-Mailclients per SMTP, POP3 und IMAP sowie Webbrowser
    über Domino Web Access.
  • Zum Entwickeln von Domino-Anwendungen diente früher eine
    etwas archaischen Formelsprache. Mehr bieten Lotusscript und Java,
    wobei die Klassen beider Sprachen weitgehend identisch sind.
  • Mit DECS (Domino Enterprise Connection Services) und dem LEI
    (Lotus Enterprise Integrator) gibt es zwei mächtige
    Schnittstellen zu Datenbanken, ERP-Anwendungen und anderen
    Datenquellen.
  • XML in erwähnenswertem Umfang hielt mit der Version 6
    Einzug. Die Version 7 wird auch die Implementierung und Nutzung von
    Webservices erleichtern.

Sowohl die Java-Klassen als auch die XML-Schnittstellen sind stark Dokumenten-orientiert. Damit bietet sich das Ganze vor allem für Anwendungen an, die entweder Basisfunktionen wie etwa Maildienste nutzen oder in denen Dokumente eine wichtige Rolle spielen - wie es eben bei kollaborativen Anwendungen der Fall ist. Hier ist die Entwicklung von Anwendungen mit Domino oft viel einfacher als mit J2EE-Application-Servern und Datenbanken.

Java ist für Domino die Sprache Nummer eins

Obwohl Lotusscript gleichermaßen plattformneutral ist, macht Java als Programmiersprache für Domino-Anwendungen mitlerweile die bessere Figur. Zum einen kann Java nämlich neben den Klassen von Domino auch externe Java-Klassen ansprechen. Zum anderen sind diese Klassen - auch als Domino Objects for Java bezeichnet - von externen Java-Anwendungen nutzbar. Damit lassen sich zur Freude jedes Anwendungsentwicklers Domino-Funktionen in andere Applikationen einbauen. Besonders eng gelingt die Integration - wenig überraschend - mit IBMs eigenem Applikation Server Websphere, insbesondere bei der Authentifizierung.

Die Java-Unterstützung - zu ihr zählen auch Servlets in Webanwendungen - hat zudem den Vorteil, dass sich Java-Entwicklern relativ leicht die Fähigkeiten von Lotus Domino erschließen. Wer sich einmal mit dem Domino Object Model (DOM - wie so viele Objektmodelle) vertraut gemacht hat, kann leicht auf die Datenbanken und die darin enthaltenen Dokumente zugreifen. Da Domino keine relationale Datenbank ist, hat es zwar ein paar Eigenheiten, die Zugriffe folgen jedoch immer demselben, verhältnismäßig einsichtigen Raster.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook