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.