Dabei ist zu beachten, dass der Domino Designer weiterhin keine Eclipse-Anwendung ist. Das Werkzeug ist vom Grundkonzept her weitgehend unverändert, aber funktional um einige wichtige Bereiche erweitert worden. Dazu gehört auch die Unterstützung für die sogenannten Composite Applications.
Bei dieser Art von Applikationen können Komponenten von Domino-Anwendungen mit anderen Komponenten, die beispielsweise auf der Eclipse-Plattform oder im Lotus Component Designer entwickelt wurden, kombiniert werden. Das bietet eine Reihe von Vorteilen. Vorhandene Funktionen von Domino-Anwendungen können in neue Anwendungen integriert werden. Ebenso können auch Module, die sich auf einer anderen Plattform einfacher entwickeln lassen, in Domino-Anwendungen eingebunden werden.
Um diese Anwendungen im Domino Designer realisieren zu können, ist die Web-Service-Unterstützung erweitert worden; so sind Web Services für die Verknüpfung der Anwendungsmodule möglich.
Mehr Neuerungen
Deutlich verbessert wurde die Integration mit IBM-DB2-Datenbanken, die seit der Version 7 alternativ zu den bisherigen .NSF-Datenbanken als Repositories verwendet werden können. In diesen können nun wesentlich mehr Metadaten über Ansichten abgefragt werden. Damit wird eine Steuerung von Anwendungen durch direkte Modifikation von Informationen in der DB2 ebenso wie eine Analyse solcher Anwendungen vereinfacht.
Neu sind auch spezielle Formen von Ansichten, mit denen die Informationen einerseits in vertikaler statt horizontaler Ausrichtung und andererseits als Kacheln – kleine, neben- und untereinander platzierte Informationsobjekte – angezeigt werden. Diese neuen Varianten von Ansichten stehen allerdings nur in den Composite Applications zur Verfügung.
Außerdem gibt es eine Reihe von HTML-Formatierungsoptionen. Mit diesen kann man beispielsweise erreichen, dass Tabellen in anderer Form dargestellt werden oder Rich-Text-Felder generell vollständig sichtbar sind.
Für die Laufzeit ist besonders wichtig, dass die Erstellung von Indizes in Ansichten verzögert werden kann, bis diese tatsächlich erstmals verwendet werden. Dafür wird die Option Defer index creation until first use bei den Eigenschaften einer Spalte in der Ansicht verwendet.
Neue HTML-Optionen
Für die Verarbeitung der Umsetzung von Masken und Feldern in HTML gibt es beim Domino Designer 8 deutlich mehr Steuerungsmöglichkeiten. Diese Optionen lassen sich bei den Eigenschaften von Feldern oder auf der Ebene von Masken setzen. Bei einer Maske werden sie im Feld $$HTMLOptions konfiguriert. Falls mehrere HTML-Optionen genutzt werden sollen, ist dieses Feld so anzupassen, dass mehrere Werte zulässig sind.
Die Optionen werden immer in der Form Name=Wert angegeben. Folgende Optionen sind zulässig:
-
DisablePassThruHTML: Deaktiviert die Verwendung von Passthru-HTML, das nicht modifiziert wird. HTML wird in diesem Fall als reiner Text verarbeitet.
-
ForceSectionExpand: Erzwingt die Anzeige aller Abschnitte im Dokument.
-
ForceOutlineExpand: Erzwingt die Anzeige aller Inhalte von Gliederungen.
-
RowAtATimeTableAlt: Erzwingt eine veränderte Formatierung von Tabellen mit sogenannten tabbed Abschnitten. Diese werden alle gleichzeitig untereinander angezeigt.
-
TextExactSpacing: Behält zusätzliche Leerzeichen innerhalb von Zeilen bei. Das kann für die optische Darstellung wichtig sein.
Rich Text Lite
Ein ganz neuer Feldtyp bei Notes/Domino 8 sind die sogenannten rich text lite fields. Wie der Name schon andeutet, handelt es sich um eine Variante der Rich-Text-Felder, in denen auch größere Mengen an formatiertem Text, eingefügte Objekte und Attachements verwaltet werden können.
Die neuen Felder verfügen über ein zusätzliches Symbol, über das man Feldinhalte einfügen kann. Benutzer können genau die in einer Drop-Down-Liste vorgegebenen Inhalte in dieses Feld aufnehmen. Falls versucht wird, andere Inhalte in diese Felder einzufügen, wird eine Fehlermeldung angezeigt.
Wenn ein solches Feld eingefügt wird, können die Objektklassen, die zulässig sind, ausgewählt werden. Entsprechend wird die Liste der möglichen Inhalte eingeschränkt. Die Verwendung dieser Felder ist unter anderem deshalb interessant, weil man damit steuern kann, welche Informationen in einem solchen Feld sind und sich der Code für die automatische Verarbeitung der Feldinhalte deutlich einfacher gestalten lässt.
Web Services
Da Web Services das Bindeglied der zusammengesetzten Anwendungen (Composite Applications) bei Lotus Domino sind, gibt es in diesem Bereich auch wesentliche Änderungen. Die vielleicht wichtigste ist, dass neben der bisherigen Unterstützung eines Web Service Providers – also der Bereitstellung von Web Services – auch ein Web Service Consumer realisiert werden kann, ohne dazu mit Java auf externe Klassen zugreifen zu müssen.
Die Vorgehensweise dafür ist allerdings gewöhnungsbedürftig. Nach der Erstellung einer Skript-Bibliothek (Script Library) kann im unteren Bereich die Schaltfläche WSDL ausgewählt werden, um eine WSDL-Datei mit den Beschreibungen der Web Services zu importieren. Durch den Import wird automatisch Java-Code erzeugt, der den Web Service repräsentiert. Die dabei erstellten PortType- und ValueType-Klassen können für den Zugriff auf den Web Service verwendet werden.
Neben dieser grundlegenden Erweiterung gibt es viele weitere Verbesserungen bei der Nutzung von Web Services im Domino Designer. Eine besonders wichtige Funktion ist der Preview von Web Services in der Entwicklungsumgebung, bevor diese freigegeben werden. Das entspricht im Konzept den Preview-Funktionen, die es beispielsweise auch für Masken gibt.
RSS-Feeds
Im neuen Designer 8 können Sie nun auch RSS-Feeds anbieten. Dafür gibt es mit rss_generator.ntf eine neue Vorlage, die Agenten und Skript-Bibliotheken enthält, die für die Erstellung solcher RSS-Feeds von Domino-Datenbanken benötigt werden. Diese Feeds können innerhalb von Lotus Notes/Domino an vielen Stellen verwendet werden, beispielsweise mit Diskussionen oder Kontakt-Datenbanken.
Die Datenbanken, die auf Basis der Vorlage erstellt werden, haben drei primäre Aufgaben:
-
Sie bilden Felder in Domino-Datenbanken auf die RSS-XML-Elemente ab.
-
Sie erzeugen die RSS-Feeds.
-
Sie kündigen die Feeds an.
Datenbanken, die auf dem Template basieren, können nur auf dem Domino-Server eingesetzt werden. Sie können außerdem nur RSS-Feeds für Datenbanken bereitstellen, die sich auf dem gleichen Server befinden.
Der Zugriff erfolgt in der Regel anonym. Wenn man die Einstellungen für die Authentifizierung beim Server als Basis-Authentifizierung konfiguriert, erfolgt aber eine Authentifizierung, sodass die RSS-Feeds entsprechend geschützt sind.
Änderungen bei LotusScript, Java und der Formelsprache
Abschließend gibt es Änderungen bei den LotusScript- und Java-Klassen sowie bei der Formelsprache. Dazu gehören unter anderem die folgenden neuen Klassen:
-
NotesDirectory: Gibt die Verzeichnisse von Notes an, die sich auf einem Server befinden.
-
NotesDirectoryNavigator: Damit kann eine einfache Navigation durch diese Verzeichnisstrukturen erfolgen.
-
NotesProperty: Gibt eine einzelne Eigenschaft in einer zusammengesetzten Anwendung an. Diese Eigenschaften werden für die Kommunikation zwischen Komponenten in solchen Anwendungen benötigt.
-
NotesPropertyBroker: Die übergeordnete Klasse für den Property-Broker, der diese Kommunikation steuert.
In der Formelsprache finden sich folgende Neuerungen:
-
Die Formel @URLQueryString erlaubt nun dynamische DB2 Query Views.
-
Bei @UserRoles gibt es keine Einschränkungen mehr für den Standort der Datenbanken.
-
Mit dem @Command CopySelectedAsTable lassen sich Informationen als Tabelle kopieren.
-
Außerdem gibt es ein weiteres neues @Command. Mit OpenInNewWindow kann ein neues Fenster für die Ausgabe von Informationen geöffnet werden.
Zusammenfassend lässt sich sagen, dass trotz dieser Änderungen das Release 8 beim Domino Designer aber eindeutig im Fokus der zusammengesetzten Anwendungen und der dafür erweiterten Web-Service-Unterstützung steht. (mja)