Skip To Content

Integrieren mit einem Content-Management-System

In diesem Thema

Integrieren des Geoportals mit einem Content-Management-System

Ein Content-Management-System (CMS) ist eine Software, mit deren Hilfe Benutzer Inhalte einer Website eingeben und ändern können. Es sind verschiedene CMS verfügbar und das Geoportal kann in ein CMS integriert werden. Ein CMS kann auch als neue Registerkarte in das Geoportal integriert werden. Ein CMS ist keine Voraussetzung für das Geoportal, aber durch die Integration eines CMS kann der Inhalt des geografischen Metadatenkatalogs möglicherweise zielgerichteter angezeigt werden. CMS-Seiten können bestimmte Gruppen geografischer Daten und Dienste hervorheben, die für bestimmte Benutzergruppen oder Themen zutreffend sind. Es stehen verschiedene Optionen für die CMS-Integration zur Verfügung, die in der folgenden Darstellung veranschaulicht werden:

  • Option 1 – Ein Browser kann CMS-Webseiten mithilfe eines HTML-<iframe>-Tags in Geoportal-Webseiten einbetten. Ein typischer Fall ist zum Beispiel das Hinzufügen einer Registerkarte zur Geoportal-Benutzeroberfläche, die auf eine CMS-Startseite verweist.
  • Option 2 – Umgekehrt kann ein Browser Geoportal-Webseiten mithilfe eines HTML-<iframe>-Tags in CMS-Webseiten einbetten. Ein typischer Fall hierfür ist das Hinzufügen einer Registerkarte zur CMS-Benutzeroberfläche, die auf eine Geoportal-Startseite verweist.
  • Option 3 – Geoportal-Webseiten können das CMS einfach in einem separaten Fenster öffnen. Dies erfolgt durch Hinzufügen des HTML-Tags <a> in die Geoportal-Benutzeroberfläche.
  • Option 4 – CMS-Webseiten können das Geoportal einfach in einem separaten Fenster öffnen. Dies erfolgt durch Hinzufügen des HTML-Tags <a> in die CMS-Benutzeroberfläche.
  • Option 5 – Das CMS kann zudem Zielinhalte über die Geoportal-Rest-API aufnehmen. Die Rest-API ermöglicht die Übergabe von Katalogabfrageanforderungen über eine einfache URL und kann die Ergebnisse der Abfrage in verschiedenen Formaten, z. B. HTML, HTML-Fragmenten (kein <html>-Header-Tag), GeoRSS, KML oder JSON zurückgeben. Sehen Sie sich das folgende Beispiel an:
    http://host:port/[GeoportalApplicationName]?searchText=maps&f=georss&max=100
    
    Bei diesem Beispiel wird eine Suche nach dem Begriff Karten ausgeführt, und es wird eine GeoRSS-Antwort mit maximal 100 Datensätzen zurückgegeben. Das CMS rendert anschließend die Antwort.
Es gibt verschiedene Methoden, mit denen die Antwort innerhalb einer CMS-Seite gerendert werden kann. Einige Systeme haben bereits die Fähigkeit, eines oder mehrere der vom Geoportal angebotenen Antwortformate zu rendern. Ein anderer Ansatz besteht darin, eine Antwort mithilfe der XSL-Technologie umzuwandeln; auf diese Weise kann das Erscheinungsbild des gerenderten Antwortinhalts vollständig kontrolliert werden. Beim Implementieren dieses Ansatzes kommt es auf die Fähigkeiten des CMS an. Bei vielen Content-Management-Systemen ist es auch möglich, benutzerdefinierte Rendering-Adapter per Plug-In hinzuzufügen. Bei diesem Ansatz müsste eine benutzerdefinierte Komponente entwickelt werden. In diesem Thema wird ein Beispiel gezeigt, bei dem das Geoportal mit einem frei verfügbaren CMS, JSPWiki, integriert wird. Das Thema ist in zwei Teile untergliedert:
  1. Verwenden von JSPWiki mit Geoportal GeoRSS-Feeds
  2. Verwenden von JSPWiki mit der Geoportal-REST-API
Integrieren Sie Ihre JSPWiki-Seite, nachdem Sie sie konfiguriert haben, in eine neue Registerkarte im Geoportal unter Befolgung der Anweisungen unter Hinzufügen einer weiteren Registerkarte zur Geoportal-Benutzeroberfläche.

Verwenden von JSPWiki mit Geoportal GeoRSS-Feeds

In diesem Beispiel installieren Sie JSPWiki von der JSPWiki-Website. Nach dem Installieren von JSPWiki müssen Sie ein RSS-Plug-In installieren. Sie finden dies unter http://www.jspwiki.org/wiki/RssViewerPlugin. Vergessen Sie nicht, die Geoportal-Webanwendung neu zu starten, nachdem Sie die JAR-Dateien in Form von Plug-Ins installiert haben. Die Schritte für die Erstellung einer JSPWiki-Seite zum Abrufen der Geoportal-RSS-Feeds finden Sie im Folgenden:

  1. Installieren Sie JSPWiki.
  2. Erstellen Sie eine neue Seite in JSPWiki, in die Sie GeoRSS-Feeds eingeben werden.
  3. Wechseln Sie in den Bearbeitungsmodus der Seite, und fügen Sie die unten angegebene Zeichenfolge ein. Durch diese Änderung werden GeoRSS-Feeds aus Ihrem Geoportal eingefügt. In der Zeichenfolge sollte das URL-Attribut auf die REST-Ergebniszeichenfolge für die Suche verweisen, die auf der Wiki-Seite angezeigt werden soll. Wenn Sie beispielsweise möchten, dass auf der Wiki-Seite Ressourcen im Zusammenhang mit Waldbränden angezeigt werden, so würde der URL-Parameter wie der im unten angegebenen Beispiel aussehen. Die Parameter "detail", "ttl", "date" und "maxitems" sind Parameter, die vom Plug-In definiert werden. Sie können gemäß der Syntaxdokumentation auf der RssViewerPlugin-Seite angepasst werden:
    [{fr.univ.reunion.iremia.rss.RssViewer url='http://yourGeoportalserver/geoportal/rest/find/document?searchText=wildfire' detail='1' ttl='120' date='1' maxitems='20'}]
    
  4. Sie können mithilfe der REST-Syntax komplexere Suchergebnisse definieren. Hiermit können Sie Kategorien wie Ausdehnung, Thematiken, Daten usw. angeben.
  5. Speichern Sie die Wiki-Seite und verlassen Sie den Bearbeitungsmodus. Auf der Seite werden nun die Ergebnisse entsprechend den Suchergebnissen, die Sie mit der RssViewer-URL angegeben haben, angezeigt.

Verwenden von JSPWiki mit der Geoportal-REST-API

Sie können die REST-Ergebnisse auch über die Geoportal-REST-API anzeigen. In diesem Beispiel müssen Sie eine xslt-plugin.jar-Datei installieren und eine XSL-Datei mit der Bezeichnung IdentityTransform.xsl veröffentlichen, sodass JSPWiki Zugriff auf die XSL-Datei hat. Die einzelnen Schritte werden im Folgenden beschrieben.

  1. Installieren Sie JSPWiki.
  2. Installieren Sie die Datei xslt_plugin.jar. Sie finden Sie unter http://www.jspwiki.org/wiki/XSLTPlugin:
    • Wechseln Sie zur Registerkarte Anfügen auf der Website, und kopieren Sie die Datei xslt_plugin.jar in den Ordner\\JSPwiki\WEB-INF\lib.
    • Fügen Sie in der Datei jspwiki.properties im Abschnitt Plugin search paths folgenden Eintrag hinzu:
      #############################################################################
      #
      #  Plugin search paths.
      #
      #  Define here the packages you want to use for searching plugins, 
      #  separated with commas.
      #  For example, use the following command to add "org.myorganisation.jspwiki.myplugins"
      #  and "com.foobar.myplugins" to the search path.
      #
      #  The default path is "com.ecyrd.jspwiki.plugins", and it will be always
      #  the last item on the path.  This allows you to override JSPWiki default
      #  plugins.  Note that you are only adding to the path, not replacing it (ie.
      #  the default path is never removed.)
      #
      #  jspwiki.plugin.searchPath = org.myorganisation.jspwiki.myplugins,com.foobar.myplugins
      #
      jspwiki.plugin.searchPath =net.panonet.XSLTPlugin
      
  3. Erstellen Sie die Datei IdentityTransform.xsl, und speichern Sie sie im JSPWiki-Ordner. Sie können der Datei einen beliebigen Namen geben, solange Sie im JSPWiki auf diesen verweisen. Der Text für die Datei lautet:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
    	<xsl:output method="text"/>
    	<xsl:template match="/">
    		<xsl:for-each select="//item">
    			<div>
    				<xsl:text>&lt;a </xsl:text> href="<xsl:value-of select="link/@href"/>" target="_blank"<xsl:text> &gt;</xsl:text>
    				<xsl:text>&lt;h4&gt;</xsl:text>
    					<xsl:value-of select="title"/>
    				<xsl:text>&lt;/h4&gt;</xsl:text>
    				<xsl:text>&lt;/a&gt;</xsl:text>
    				<p>
    					<xsl:value-of select="description"/>
    				</p>
    				<xsl:text>&lt;br&gt;</xsl:text>
    			</div>
    		</xsl:for-each>
    	</xsl:template>
    </xsl:stylesheet>
    
  4. Sie erstellen jetzt eine neue JSPWiki-Seite und integrieren die Geoportal-REST-API-Ergebnisse in sie.
    • Erstellen Sie die JSPWiki-Seite.
    • Wechseln Sie in den Bearbeitungsmodus der Seite.
    • Fügen Sie die unten stehende Zeichenfolge ein. Der xml=-Parameter muss die URL Ihrer Suchergebnisseite für die Ergebnisse der Geoportal-REST-API aufweisen, und der xsl=-Parameter muss auf die URL zur veröffentlichten Datei IdentityTransform.xsl verweisen.
      [{INSERT net.panonet.XSLTPlugin WHERE xml='{url to document (or search result page) of Geoportal REST API}', xsl='{url to IdentityTransform.xsl}'}]
      
      Zum Beispiel: Waldbrand-Metadaten
      [{INSERT net.panonet.XSLTPlugin WHERE xml='http:// yourGeoportalServer /geoportal/rest/find/document?searchText=wildfire*', xsl='C:/Tomcat/webapps/JSPWiki/channelPage.xsl'}]
      
  5. Speichern Sie die Seite, und verlassen Sie den Bearbeitungsmodus. Auf der Seite sehen Sie nun die Suchergebnisse, die der REST-URL entsprechen, die Sie in das XSLTPlugin eingegeben haben.