Bisher haben wir Geonetwork unter Windows betrieben. Deshalb können derzeit hier auch nur für Windows 64 Empfehlungen gegeben werden.
Der Geonetwork wurde getestet mit:
Wegen der neuen Lizensbedingungen von Oracle Java wurde die Verwendung des Open JDK untersucht.
cardo unterstützt den Geonetwork 3.4.x ab cardo-Version 3.8.10.39452.
Stand November 2018:
Geonetwork 3.4.4 benötigt ein Java 8, mit einer höheren Version gab es jeweils Probleme. Die aktuell getestete Umgebung sieht wie folgt aus:
Tomcat kann man als Installer herunterladen. Dieser entscheidet nach der ausgewählten Java-Version, ob Tomcat als 32 oder 64 Bit Version istalliert wird. Als Basisverzeichnis für die JRE bei Installation des Tomcat wird das Basisverzeichnis von Java (z.B. Programme/ojdkbuild/java-1.8.0-obenjdk-1.8.9.191-1) erwartet.
Sind alle Systemvoraussetzungen erfüllt, kann GeoNetwork installiert werden:
Folgenden Parameter im Tomcat anpassen, sonst kommt es zu einer OutOfMemory-Exception:
"You can do that by shutting down the tomcat service, then going into the Tomcat/bin directory and running tomcat9w.exe. Under the "Java" tab, change the properties above. Click "OK" and then restart the service."
Damit das Konfig-Tool von Tomcat im SystemTray von Windows auftaucht, muss in einem CommandoZeilenFenster folgender Befehl ausgeführt werden:
tomcat9w //MS//
Hinweis: Es ist prinzipiell möglich verschiedene Versionen von Tomcat parallel zu installieren. Dazu müssen entsprechend bei der Installation alle Ports neu vergeben werden
Ab IIS-Version 7 gibt es ein Zusatzmodul von Microsoft, welches URL-Rewrite ermöglicht: IIS URL Rewrite Module. Damit dieses als ReverseProxy verwendet werden kann, wird noch das Modul 'Application Reverse Routing' (APP) benötigt und für die Installation der WebPlatformInstaller. Die Installation ist oben beschrieben.
Wichtig: Per Checkbox den Proxy aktivieren (siehe Installationsanweisung weiter oben).
Über URL-Rewrite kann über entsprechende Regeln eine Weiterleitung einer IIS-Webseite auf einen Tomcat eingerichtet werden.
Die Basisurl des Geoneworks lautet normalerweise:
http://<domain>/geonetwork
Das Unterverzeichnis 'geonetwork' darf an der Webseite NICHT existieren sondern wird nur über die nachfolgenden Regeln an der Webseite behandelt. Die nachfolgenden Regeln funktionieren auch an einer cardo-Webseite. Sie können also damit eine Adresse http://<IhrCardo>/geonetwork einrichten.
Definieren Sie eine neue Eingangsregel (Inbound rule) mit folgenden Parametern (fett = geändert zum Standard):
Requested Url: Matches the pattern
Using: Regular expression
Pattern: geonetwork(.*)
Ignore case: true
Action: Rewrite
Rewrite Url: http://localhost:8080/geonetwork{R:1}
Append query string: true
Unter Umständen kann es noch sinnvoll sein, auf einen bestimmten Host-Header zu beschränken. Dann kann man eine Condition mit folgenden Parametern definieren:
Condition input: {HTTP_HOST}
Check if input string: Matches the pattern
Pattern: ^csw\.idu\.de$
Ignore case: true
Zudem wird eine Ausgangsregel benötigt, die Redirects auf die externe Adresse umschreibt.
Nachfolgend die Regeln als XML-Abschnitt, so wie sie in der web.config eingetragen werden:
<system.webServer>
<rewrite>
<outboundRules>
<rule name="Redirect auf GeoNetwork" preCondition="3xx Redirect" enabled="true">
<match serverVariable="RESPONSE_Location" pattern="http://localhost:8080(.*)" />
<action type="Rewrite" value="http://csw.idu.de{R:1}" />
</rule>
<preConditions>
<preCondition name="3xx Redirect">
<add input="{RESPONSE_STATUS}" pattern="3[0-9][0-9]" />
</preCondition>
</preConditions>
</outboundRules>
<rules>
<rule name="Geonetwork" stopProcessing="true">
<match url="geonetwork(.*)" />
<action type="Rewrite" url="http://localhost:8080/geonetwork{R:1}" />
<conditions>
<add input="{HTTP_HOST}" pattern="^csw\.idu\.de$" />
</conditions>
</rule>
</rules>
</rewrite>
</system.webServer>
Hinweis: Sollte als Protokoll https verwendet werden, muss auch entsprechend bei der Rewrite-Regel die richtige Adresse https://... verwendet werden.
Beachten Sie bitte auch die Anweisungen zur Konfiguration des Geonetwork 2.10.4, da noch nicht alle Einstellungen für 3.4.x getestet worden sind.
Abruf eines Metadatensatzes über seinen Identifier (geonetworkspezifische Schnittstelle):
http://<serveradresse:port>/geonetwork/srv/eng/xml_iso19139?uuid=<Identifier>
Hinweis: Beachten Sie, dass die neue Version GeoNetwork 3.4.x bei der Definition des CSW im cardo explizit bekannt gegeben werden muss (Servertyp = GeoNetwork_3x).
Soll der Geonetwork z.B. auf einen anderen Server umgezogen werden, ist eine Neuinstallation zu empfehlen, da die Daten jederzeit durch einen Neuexport aus cardo wieder hergestellt werden können.
Hinweis: Eventuell wurden kundenspezifische Logo-Dateien im Bereich webapps/geonetwork/images hinterlegt (z.B. CSW der Landkreise). Diese müssen dann mit auf den neuen Server kopiert werden.
GeoMIS Sachsen nutzt zur besseren Gliederung selbstdefinierte Kategorien nach denen gruppiert werden kann. U.a. werden auch die 'Datenhaltenden Stellen' beachtet, wenn diese am publizierten Metadatensatz vermerkt sind.
GeoMIS Sachsen erwartet die Angabe entsprechender Kürzel im Feld 'hierarchyLevelName' des ISO-Datensatzes.
Bei der Generierung eines Metadatensatzes aus cardo wird anhand des aktuellen Projektes ermittelt, ob der Ersteller zu einer der bekannten datenhaltenden Stellen gehört und wenn ja, wird das entsprechende Kürzel automatisch in den Metadatensatz übernommen.
Es ist also keinerlei Konfiguration in cardo nötig, sollte kein entsprechendes Kürzel in den Metadaten ausgegeben werden, wenden Sie sich bitte an uns. Die Liste der Kürzel kann sich ändern und muss von uns entsprechend nachgepflegt werden.
Publizieren Sie Ihre Metadaten in einen selbsverwalteten GeoNetwork, dann muss dessen Konfiguration angepasst werden, damit die kaskadierte Suche nach den Kategorien funktioniert.
Der GeoNetwork (getestet mit Version 3.4.4, 2.10.4 und 2.6.3) hat in seiner Standardeinstellung eine Liste von Parametern definiert, in welchen mit der Operation 'GetRecords' gesucht werden kann. Das Feld 'hierarchyLevelName' ist da noch nicht dabei und muss noch aufgenommen werden, damit GeoMIS Sachsen bei kaskadiertem Zugriff dieses Feld mit auswerten kann.
Fügen Sie dazu in die Datei
geonetwork/WEB-INF/config-csw.xml
folgende Zeile als neue Zeile nach allen anderen Definitionen der 'AdditionalQueryables' ein:
<parameter name="HierarchyLevelName" field="levelName" type="AdditionalQueryables" />
Sie müssen den Tomcat neu starten, damit die Änderung wirksam wird. Dann sollte die Suche nach Kategorien im GeoMIS (mit aktivierten externen Katalogen) das gewünschte Ergebnis bringen.
Als weitereführende Info ist diese Seite zu empfehlen.