Ziel des praktischen Teils dieser Arbeit war es, im Labor Geoinformatik der HTW Dresden einen Client zu implementieren. Dieser soll in der Lage sein, sowohl mit Tile Caching fähigen WMS, als auch mit OGC konformen WMS zu interagieren. Weiterhin sollte vorzugsweise Open Source Software verwendet werden.

Der Client wurde mit dem Framework MapFish realisiert, welcher aus folgenden Komponenten besteht.
  • OpenLayers - als Basiskomponente für die kartographische Grundfunktionalität
  • GeoExt - als Aufsatz zu OpenLayers
  • MapFish API - mit eigenen Widgets
  • ExtJS - zur Entwicklung von interaktiven Webanwendungen
  • Als Schnittstelle zu den kachelnden Diensten wurde WMS-C verwendet.

    Übersicht


    Das Frontend und Backend sind die Komponenten, welche vom Nutzer aufgerufen werden. Sie sind mit HTML und JavaScript umgesetzt und greifen auf die Konfiguration zu. Diese Datei ist als JSON abgelegt und enthält alle notwendigen Informationen zu den einzelnen Diensten, die dargestellt werden sollen. Ebenfalls sind globale Parameter, wie die Projektion, die Auflösungen (engl. resolutions) sowie die Zoomstufe und Position beim Start der Anwendung enthalten. Über das Backend wird die Anwendung konfiguriert und mit Hilfe von JSP gesichert.

    Das Backend nutzt einen Proxy, um die GetCapabilities-XML vom Kartendienst einzulesen. Das Frontend benötigt den Proxy, um einen GetFeatureInfo Request durchzuführen. Ein Proxy ist immer dann notwendig, wenn über ein XMLHttpRequest Dateien von externen Domains geladen werden. JavaScript wird in einer Sicherheits-Sandbox ausgeführt und behandelt die Anwendung isoliert. Somit ist der Zugriff auf externe Domains nicht erlaubt.