Die JDO-Datenbank der Fa. Versant (ehemals Poet) heißt FastObjects. Wir verwenden die T7-Version.
Datenbank-Verbindungen
Die Datenbank-Connection wird mit Hilfe einer connectionURL geöffnet. Sie hat die folgende Syntax: fastobjects://<host>/<name> (z.B. fastobjects://localhost/TestDB)
Für eine EEC-Installation wird die Datenbank-Verbindung über die ini-Datei vorgegeben:
-Dorg.foederal.sn.connectionURL=fastobjects://<host>/<name>
Im Folgenden werden die Verbindungsparameter host und name erläutert:
host
T7 kann im LOCAL- und im Server-Modus betrieben werden:
- LOCAL-Modus: Sowohl Datenbank als auch Client-Anwendung (EEC) befinden sich in den logischen Laufwerken eines Rechners (sinnvollerweise jeweils auf einer lokalen Festplatte). Für diesen Modus sind keine weiteren Installationen erforderlich. Als host in der connectionURL ist entsprechend LOCAL anzugeben.
- Server-Modus: Auf dem Server muss ein FastObjects-Datenbank-Server eingerichtet werden (siehe unten). Als host ist der Rechnername oder die IP-Adresse anzugeben. Befinden sich Client und Server auf einem Rechner kann localhost verwendet werden.
name
Jeder Datenbank liegt ein Schema zugrunde. Sowohl Schema als auch Datenbank werden als Ordner im Dateisystem abgebildet. Wenn sich ein Client auf eine Datenbank verbindet, müssen folgende Referenzen aufgelöst werden:
- Der Client muss die Datenbank referenzieren
- Die Datenbank muss ihr Schema referenzieren.
Die Referenz auf das Schema wird beim Erzeugen einer neuen FastObjects-Datenbank fest innerhalb der Datenbank gespeichert und kann nicht verändert werden.
Für beide Referenzierungen werden logische Namen verwendet, damit Datenbanken und Schemata leicht verschoben werden können. Das Schema hat immer den Namen SnDbDictionary.
- LOCAL-Modus: In der connectionURL wird der logische Name der DB angegeben. Sie wird als Ordner im Eclipse-Installationsordner angelegt. Die Zuordnung zum Schema und zum absoluten Pfad erfolgt automatisch durch das Poet-Plugin.
- Server-Modus: Die Zuordnung logischer Namen zu absoluten Pfaden erfolgt durch die Konfigurationsdatei ptserver.cfg (siehe unten).
Die folgende Grafik verdeutlicht dem Ablauf beim Öffnen einer Datenbank-Verbindung anhand eines Beispielszenarios:
- Falls FastObjectsServer.exe keinen Eintrag für einen logischen Datenbank- oder Schema-Namen in ptserver.cfg findet, wird der Pfad aus dem absoluter Pfad des Installationsordners des Datenbankservers (in diesem Falle c:\fastobjects\) und dem logischen Namen zusammengesetzt.
- Das Erzeugen einer Datenbank erfolgt nach einen ähnlichen Schema. Zusätzlich zu connectionURL wird allerdings auch der logische Name des zugrundeliegenden Schemas mitübertragen. Das Schema hat immer den Namen SnDbDictionary.
- Wenn der Schema-Pfad in der ptserver.cfg-Datei relativ angegeben ist, ermittelt FastObjectsServer.exe den absoluten Pfad ausgehend vom absoluten Pfad der Datenbank (nicht ausgehend vom Installationsordner des Servers).
Hinweis:
Die Datenbank-Connection kann während der Laufzeit nicht geändert werden. Hierfür muss EEC grundsätzlich heruntergefahren und mit einer neuen connectionURL (siehe oben) neu gestartet werden. Zu beachten ist, dass beim Start die zuletzt sichtbaren Sichten automatisch wieder erzeugt werden. Dazu muss möglicherweise auf die Datenbank zugegriffen werden. Ist noch keine DB für die neue connectionURL erzeugt, kommt es zu Fehlermeldungen beim Hochlauf. Waren beim letzten Schließen noch Editoren geöffnet, werden diese beim Start wieder geöffnet. Sind die zuletzt editierten Objekte nicht verfügbar wird dies als Fehlermeldung im Editor angezeigt.