Konfiguration von DocPortal

Grundlegendes zur Konfiguration

Die Konfiguration der Beispielanwendung ist im Verzeichnis $DOCPORTAL_HOME/config zu finden. Hier sind alle Dateien untergebracht, die Sie für eine erste oder einfache Installation der Anwendung nicht ändern müssen. Nach der Installation via install.xml sind die Standardkonfigurationen bereits vorgenommen worden. Es geht nun also darum, davon ausgehend zur eigenen Anwendung zu gelangen. Die wichtigste Datei hierfür ist die mycore.private.properties. Diese Datei enthält für den Anfang alle einzustellenden Werte, die an Ihre spezielle Systemumgebung angepasst werden müssen. Damit diese privaten Einstellungen nicht durch ein Update überschrieben werden, gibt es daneben die mycore.private.properties.template.

Hinweis
Achten Sie bei Updates stets darauf, ob sich im Template etwas geändert hat und übernehmen Sie diese Änderungen ggf. angepasst in Ihre Datei!

mycore.private.properties

Die Datei mycore.private.properties enthält eine ganze Reihe von Konfigurationswerten. Fürs erste sollten Sie folgende Werte anpassen:

  • MCR.Modules.Application – Diesen Wert sollten Sie ändern, wenn sie eigene Module einbinden wollen oder das docportal-Modul deaktivieren möchten.
  • MCR.basedir – Pfad zur DocPortal-Root bzw. entspricht DOCPORTAL_HOME
  • MCR.Mail.Address – Mail-Adresse, an die alle Nachrichten gehen sollen
  • MCR.Mail.Server – SMTP-Server für ausgehende Mail
  • MCR.WebService.Admin – Kennung des Axis-Admins zum deploy des WebService (selbst zu definieren)
  • MCR.WebService.AdminPasswd – und das dafür erforderliche Passwort (selbst zu definieren)

hibernate.cfg.xml

MyCoRe verwendet Hibernate als Schnittstelle zwischen der Java-Anwendung und der verwendeten relationalen Datenbank. Die Konfiguration dazu ist ebenfalls als Template vorhanden und wird bei der Erstinstallation via install.xml kopiert, von

docportal/config/hibernate/hibernate.cfg.xml.template

nach

docportal/config/hibernate/hibernate.cfg.xml.

Für Anpassungen finden Sie unter www.hibernate.org ggf. weitere Hinweise. Diese sind vor allem sinnvoll, wenn Sie zu einem späteren Zeitpunkt die Hibernate-Anbindung für Ihre Datenbank optimieren wollen, oder besonderen Funktionen wie Statistiken, Caches und Logging nutzen wollen.

Initialisieren von DocPortal

Das Installationsskript install.xml hat Ihr DocPortal bereits mit Beispieldaten befüllt. Dabei wurden auch mehrere Verzeichnisse angelegt, die generierte Daten enthalten.

Verzeichnis Beschreibung
build In diesem Verzeichnis werden alle für die Kommandozeilenarbeit und die Webanwendung erforderlichen Daten abgelegt.
data In diesem Verzeichnis sind standardmäßig alle Daten, Indizes und Objektdateien abgelegt.
save In diesem Verzeichnis befinden sich alle Sicherungen. Es wird durch Anwendung des MCR-Kommandos save ... bzw. ant saveWebContent gefüllt.

Tabelle 4.1: Verzeichnisse des Build-Prozesses

Die nachfolgenden Kommandos wurden ebenfalls bereits von dem Installationsskript install.xml ausgeführt. Um für eine eigene Anwendung, spätere Änderungen etc. nachvollziehen zu können, was im Einzelnen warum getan werden muss, hier nochmal eine Auflistung der Kommandos, die im DOCPORTAL_HOME schrittweise auszuführen sind.

  1. Prüfen der Systemumgebung in DocPortal mit

    ant info

  2. Generieren der XML-Schema-Dateien für das Datenmodell mit dem Kommando

    ant create.schema

  3. Compilieren der zusätzlichen Java-Klassen und kopieren der notwendigen Java Bibliotheken mit dem Kommando

    ant create.jar

  4. Erzeugen der CommandLineTools mit Hilfe des Kommandos

    ant create.scripts

  5. Starten der HSQLDB (wenn kein anderes Datenbanksystem verwendet wird)

    build/bin/hsqldbstart.sh bzw. build/bin/hsqldbstart.cmd

  6. Laden der Standard-ACL's, Gruppen und Benutzer für die Beispielanwendung mit den Kommandos

    ant create.users und ant create.default-rules

  7. Laden aller mitgelieferten Klassifikationen. Diese werden für ein reibungsloses Funktionieren der Anwendung sowie zum Einspielen der Beispieldaten benötigt.

    ant create.class

Nach diesen Schritten steht eine leere (bis auf Nutzer und Klassifikationen), aber vollständige Beispielanwendung zur Verfügung, in welche per CommandLineInterface Daten eingestellt werden können. Wie dies geht, wird im Kapitel Kommandos zur Verwaltung der Objekte beschrieben.

Starten der MyCoRe-Kommandozeile

Starten Sie die MyCoRe-Kommandozeile, auch CommandLineInterface genannt, durch Aufruf von build/bin/mycore.sh (UNIX/MacOS) bzw. build\bin\mycore.cmd (Windows). Eine kurze Übersicht aller Befehle erhalten Sie durch Eingabe von help. Sie verlassen die MyCoRe-Kommandozeile durch Eingabe von quit oder exit. Mit help [Kommandoteil] erhalten Sie einen kurzen Hilfetext. Eine ausführliche Dokumentation enthält der Abschnitt Das Die Verwendung der Kommandozeilenschnittstelle.

Sie können natürlich auch die Aufrufe in beliebige Skripte usw. einbinden, um eine Batch-Verarbeitung zu organisieren.

Erzeugen der Web-Anwendung

Dieser Abschnitt beschäftigt sich mit der Inbetriebnahme der DocPortal-Anwendung als Web-Applikation. Um den Installationsaufwand in Grenzen zu halten, enthält der DocPortal-Code-Baum schon eine fertige Servlet-Engine namens Jetty. Diese ist zwar nicht so mächtig wie Tomcat, ist aber für die Entwicklung und Demonstrationszwecke sehr gut geeignet. Für den Produktionsbetrieb empfehlen wir jedoch dringend die Verwendung von Tomcat oder Websphere oder ähnlichen Servlet-Engines.

Das Installationsskript install.xml hat bereits alle Schritte für die Erzeugung der Webanwendung übernommen. Für eine Installation ohne dieses Skript oder spätere Änderungen an den Webinhalten, sind folgende Schritte zu tun, bevor Jetty gestartet werden kann:

  1. Erstellen der Webanwendung mit

    ant create.webapp

  2. Alternativ können Sie auch ein Web Application Archive (war) erzeugen.

    ant war

Das MyCoRe Build-Skript kopiert beim Erzeugen der Web Applikation auch alle externen, erforderlichen *.jar-Dateien Ihrer verwendeten Datenbank-Systeme (DB2, MySQL, ...) in das Verzeichnis WEB-INF/lib, entsprechend den Vorgaben Ihrer Konfiguration in build.properties.

Nun können Sie die Webanwendung ein erstes Mal starten. Benutzen Sie dazu das generierte Skript, welches die Servlet-Engine Jetty aktiviert.

build/bin/jettystart.sh bzw. build\bin\jettystart

Starten Sie nun einen Web-Browser der URL http://localhost:8291/

Damit Ihre Anwendung auch über die WebServices erreichbar ist (entfernte Anfragen), müssen Sie diese Funktionalität noch gesondert aktivieren. Nachdem Sie mit den Properties MCR.WebServices.Admin und MCR.WebServices.AdminPasswd Kennung und Passwort für den Administrator des Webservice gesetzt haben, verwenden Sie hierzu bei laufender Servlet Engine das Kommando

ant webservice.deploy

Die nun verfügbaren WebService-Dienste sehen Sie bei Eingabe der URL http://localhost:8291/servlets/AxisServlet in Ihrem Web-Browser.

Um den Dienst abzuschalten muss ebenfalls unter laufendem Jetty das folgende Kommando gegeben werden.

ant webservice.undeploy

Gratulation
Sie haben nun DocPortal erfolgreich installiert!

Laden der Beispieldaten

MyCoRe stellt eine umfangreiche Sammlung von Beispieldaten bereit. Diese wurde aus Performance-Gründen in ein extra Paket gepackt. Sie können diese als Distribution in Form von *.jar-Dateien von SourceForge beziehen und in Ihre fertige Anwendung laden. Alternativ ist auch ein Download vom MyCoRe-Subversion-Server möglich. Die Beispieldaten sind in mehrere Blöcke gegliedert, welche einzeln geladen werden können und bestimmte Aspekte des MyCoRe-Projektes verdeutlichen sollen. Wenn Sie DocPortal via install.xml installiert haben, ist bereits das "defaultsample", ein kleiner Satz an Beispieldaten, vorhanden.

svn checkout http://server.mycore.de/svn/content/trunk content
Zweig Beschreibung
audiosample Einige größere Audiodateien
defaultsample Ein kleineres Beispiel mit Bildern, HTML-Seiten, Text
theses Einige Diplomarbeiten im Zusammenhang mit MyCoRe
video Einige größere Videosequenzen

Tabelle 4.2: Beispieldaten im SVN

Das Laden der Daten einer Beispielgruppe in die DocPortal-Anwendung geht wie folgt:

java -jar -Xmx1024m -Xms1024m ...-installable.jar

Alternativ können die Beispiele auch nach dem Download vom SVN-Server mit ant load in die Anwendung eingebracht werden. Es ist jedoch in beiden Fällen wichtig, dass die Anwendung NICHT interaktiv läuft (kein Jetty!).

Sonstiges

Mit Hilfe des Build-Prozesses können Sie auch gezielt die erzeugte Anwendung und/oder die Daten entfernen. Während das Kommando ant clean bzw. ant clean.system alle generierten Anwendungsdaten (standardmäßig im build-Verzeichnis) entfernt, löscht ant clean.data das Verzeichnis der geladenen Daten.

Hinweis
Bitte gehen Sie mit diesen Kommandos sorgfältig um.