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.
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.
-
Prüfen der Systemumgebung in DocPortal mit
ant info
-
Generieren der XML-Schema-Dateien für das Datenmodell mit dem Kommando
ant create.schema
-
Compilieren der zusätzlichen Java-Klassen und kopieren der notwendigen Java Bibliotheken
mit dem Kommando
ant create.jar
-
Erzeugen der CommandLineTools mit Hilfe des Kommandos
ant create.scripts
-
Starten der HSQLDB (wenn kein anderes Datenbanksystem verwendet wird)
build/bin/hsqldbstart.sh bzw. build/bin/hsqldbstart.cmd
-
Laden der Standard-ACL's, Gruppen und Benutzer für die Beispielanwendung mit den Kommandos
ant create.users und ant create.default-rules
-
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:
-
Erstellen der Webanwendung mit
ant create.webapp
-
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
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.jarAlternativ 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.


