Skip To Content

Intégrer à un système de gestion de contenu

Dans cette rubrique

Intégrer le géoportail à un système de gestion de contenu

Un système de gestion de contenu (CMS, Content Management System) est un logiciel qui permet aux utilisateurs d'entrer et de modifier du contenu sur un site Web. Il existe plusieurs systèmes CMS disponibles et le géoportail peut être intégré dans un système CMS, ou un système CMS peut être intégré au sein du géoportail en tant que nouvel onglet. Un système de gestion de contenu n'est pas une condition requise du géoportail, mais l'intégration d'un tel système peut fournir une vue plus dirigée du contenu du catalogue de métadonnées géographiques. Les pages du système CMS peuvent souligner des jeux de données géographiques et des services applicables à certains groupes d'utilisateurs ou rubriques. Plusieurs options sont disponibles pour l'intégration d'un système CMS, telles qu'illustrées dans la figure ci-dessous :

  • Option 1 : un navigateur peut incorporer les pages Web du système CMS au sein des pages Web du géoportail par le biais d'une balise HTML <iframe>. Une approche standard implique l'ajout d'un onglet dans l'interface utilisateur du géoportail pour faire référence à une page de démarrage du système CMS.
  • Option 2 : inversement, un navigateur peut incorporer les pages Web du géoportail au sein des pages Web du système CMS par le biais d'une balise HTML <iframe>. Une approche standard implique l'ajout d'un onglet dans l'interface utilisateur du système CMS pour faire référence à une page de démarrage du géoportail.
  • Option 3 : les page Web du géoportail peuvent simplement lancer le système CMS dans une fenêtre distincte en ajoutant une balise HTML <a> dans l'interface utilisateur du géoportail.
  • Option 4 : les page Web du système CMS peuvent simplement lancer le géoportail dans une fenêtre distincte en ajoutant une balise HTML <a> dans l'interface utilisateur du système CMS.
  • Option 5 : le système CMS peut également intégrer le contenu ciblé par le biais de l'API Rest du géoportail. L'API Rest permet la soumission de requêtes de catalogue par le biais d'une URL simple et peut retourner les résultats de la requête au format HTML, HTML fragmentaire (sans balise d'en-tête <html>), GeoRSS, KML ou JSON. Exemple :
    http://host:port/[GeoportalApplicationName]?searchText=maps&f=georss&max=100
    
    Cet exemple de recherche est prévu pour être exécuté par rapport au terme maps et une réponse GeoRSS sera retournée avec un maximum de 100 enregistrements. Le système CMS affichera la réponse.
La méthodologie d'affichage de la réponse dans une page CMS peut varier. Certains systèmes ont une aptitude inhérente à afficher un ou plusieurs des formats de réponse fournis par le géoportail. Une autre approche implique la transformation d'une réponse à l'aide de la technologie XSL. Cela assure un contrôle total sur l'aspect et la convivialité du contenu de réponse affiché. La mise en œuvre de cette approche dépend des capacités du système CMS. De nombreux systèmes de gestion de contenu permettent également de connecter des adaptateurs de rendu personnalisés. Cette approche implique le développement d'un composant personnalisé. Cette rubrique fournit un exemple d'intégration du géoportail à l'aide d'un système CMS en libre accès, nommé JSP Wiki. Cette rubrique se compose de deux parties :
  1. Utilisation de JSPWiki avec les flux GeoRSS du géoportail
  2. Utilisation de JSPWiki avec l'API REST du géoportail
Après avoir configuré la page JSPWiki, intégrez-la dans un nouvel onglet de votre géoportail en suivant les instructions fournies dans la rubrique Ajouter un autre onglet à l'interface du géoportail.

Utilisation de JSPWiki avec les flux GeoRSS du géoportail

Dans cet exemple, vous allez installer JSP Wiki à partir du site JSP Wiki. Après l'installation de JSP Wiki, vous devrez installer un plug-in RSS, situé à l'adresse http://www.jspwiki.org/wiki/RssViewerPlugin. Souvenez-vous de redémarrer l'application Web du géoportail après l'installation des fichiers JAR du plug-in. La procédure permettant de créer une page JSP Wiki pour récupérer les flux RSS du géoportail est détaillée ci-dessous :

  1. Installez JSP Wiki.
  2. Créez une nouvelle page dans JSP Wiki, dans laquelle vous allez insérer les flux GeoRSS.
  3. Passez dans le mode de mise à jour de la page et collez la chaîne ci-dessous dans la page. Cette modification permettra d'insérer les flux GeoRSS provenant du géoportail. Dans la chaîne, l'attribut url doit faire référence à la chaîne de résultat REST de la recherche que vous souhaitez afficher dans la page Wiki. Par exemple, si vous voulez que la page Wiki affiche les ressources liées aux incendies, le paramètre url doit être similaire à celui utilisé dans l'exemple ci-dessous. Les paramètres tels que "detail", "ttl", "date" et "maxitems" sont des paramètres définis par le plug-in et ils peuvent être ajustés selon la documentation sur la syntaxe à la page Plug-in de visionnage des flux RSS:
    [{fr.univ.reunion.iremia.rss.RssViewer url='http://yourGeoportalserver/geoportal/rest/find/document?searchText=wildfire' detail='1' ttl='120' date='1' maxitems='20'}]
    
  4. Vous pouvez définir des résultats de recherche plus complexes en utilisant la syntaxe REST pour spécifier l'étendue, les catégories thématiques, les dates, etc.
  5. Enregistrez la page Wiki, quittez le mode de mise à jour et vous verrez une page affichant les résultats correspondant aux critères de recherche que vous avez spécifiés avec l'URL de la visionneuse des flux RSS.

Utilisation de JSPWiki avec l'API REST du géoportail

Il est également possible d'afficher vos résultats REST à l'aide de l'API REST du géoportail. Dans cet exemple, vous devrez installer un fichier xslt-plugin.jar et publier un fichier XSL nommé IdentityTransform.xsl, afin que JSPWiki puisse accéder au fichier XSL. La procédure à suivre est détaillée ci-dessous :

  1. Installez JSP Wiki.
  2. Installez le fichier xslt_plugin.jar, disponible à l'adresse http://www.jspwiki.org/wiki/XSLTPlugin :
    • Affichez l'onglet Attacher sur le site Web et copiez le fichier xslt_plugin.jar dans votre dossier \\JSPwiki\WEB-INF\lib.
    • Ajoutez l'entrée suivante dans le fichier jspwiki.properties, dans la section Plugin search paths :
      #############################################################################
      #
      #  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. Créez le fichier IdentityTransform.xsl et enregistrez-le dans le dossier JSPWiki. Vous pouvez nommer librement le fichier, à condition de le référencer dans JSPWiki. Texte du fichier :
    <?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. A présent, vous allez créer une nouvelle page JSP Wiki et intégrer les résultats de l'API REST du géoportail dedans.
    • Créez la page JSP Wiki.
    • Passez dans le mode de mise à jour de la page.
    • Collez la chaîne ci-dessous dans la page. Le paramètre xml= doit intégrer l'URL de la page des résultats de recherche correspondant aux résultats de l'API REST du géoportail, alors que le paramètre xsl= doit faire référence à l'URL du fichier IdentityTransform.xsl publié.
      [{INSERT net.panonet.XSLTPlugin WHERE xml='{url to document (or search result page) of Geoportal REST API}', xsl='{url to IdentityTransform.xsl}'}]
      
      Par exemple : Métadonnées d'incendie
      [{INSERT net.panonet.XSLTPlugin WHERE xml='http:// yourGeoportalServer /geoportal/rest/find/document?searchText=wildfire*', xsl='C:/Tomcat/webapps/JSPWiki/channelPage.xsl'}]
      
  5. Enregistrez la page, quittez le mode de mise à jour et vous verrez les résultats de recherche dans la page qui correspondent à l'URL REST que vous avez entrée dans XSLTPlugin.