Internet GIS (Webserver und ArcIMS)

Download Report

Transcript Internet GIS (Webserver und ArcIMS)

Interaktive Karten im Internet
Technische Infrastruktur
(Webserver und ArcIMS)
Vortrag von
Markus Tondorf
Inhalt

Webserver




ArcIMS Internet Map Server




Statische Seiten
Dynamische Seiten
Hersteller von Web-Servern, Vergleich
Komponenten und Tools auf Serverseite
Komponenten auf Clientseite
ArcXML
Vorstellung der Gruppe Technik
Webserver

Entstehung des WWW 1989 am CERN





System zum einfachen „browsen“ in vorhandenen
Dokumenten
Zunächst nur statische Seiten
Interaktion zwischen Surfer und Web-Server
Dynamische Erstellung von Webseiten
z.B. aus Datenbanken
Entwicklung neuer Technologien
CGI, PHP, Servlets, JSP und Active Server Pages
CGI



„Common Gateway Interface“
Grundgedanke: Web-Server ruft ein beliebiges
ausführbares Programm auf
Jede Programmiersprache möglich


Anwendungsbeispiele:


In der Regel wird ein Perl-Script benutzt.
Gästebücher, Pinwände, Counter, Chats usw.
Nachteil:

Langsame Ausführungsgeschwindigkeit.
CGI-Programm muß immer wieder neu geladen
werden.
PHP







„Hypertext Preprocessor“
Entstanden aus einer Sammlung von Makros von
Rasmus Lerdorf (1995) die er
„Personal Homepage Tools“ nannte
Wenig Aufwand bei der Erstellung dynamischer
Webseiten
Serverseitige in den HTML-Code eingebettete
Scriptsprache
Client erhält nie den eigentlichen Scriptcode
Breite Unterstützung von SQL-Datenbanken
Syntax ähnlich zu C
ASP „Active Server Pages“


Von Microsoft entwickelt
Scripte in HTML-Seiten (Endung .ASP)




Werden bei Aufruf der Seite ausgeführt
Ergebnis wird in die Seite integriert
Prinzipiell jede beliebige Scriptsprache möglich
Einbindung von ActiveX (COM) Objekten
<html>
<head><title>Testseite</title> </head>
<script RUNAT="Server" language="JScript">
var now = new Date();
var today= now.toLocaleString();
</script>
<body>
Die Server-Zeit:
<% Response.Write( today) %>
Uhr.
</body> </html>
Servlet

Unterschied Applet - Servlet




Servlet bleibt nach dem ersten Aufruf geladen.
Daher wesentlich schneller als z.B. CGI-Scripts.
3 verschiedene Möglichkeiten




Java-Applet auf Client (Browser)
Java-Servlet auf Server
Wie ein CGI-Script. Bietet sich bei der Umstellung bereits
bestehender Seiten an.
SSI (Server Side Include): Anweisung innerhalb der HTMLSeiten (ähnlich zu PHP)
Servlet Alias: Zugriff eines Clients wird die Ausführung eines
Servlets zugeordnet
Hohe Geschwindigkeit, da kein AWT (Abstract
Windowing Toolkit) benötigt wird
JSP „Java Server Pages“






Erweiterung der Servlet Technologie
Trennung von Benutzerinterface und
Seitengenerierung
JSP-Scripts werden in Servlets übersetzt
Automatisches Session Managment durch Cookies
Kommunikation über Tags ähnlich zu XML
Tags können frei definiert werden
Beispielanwendung für JSP
1.
2.
3.
JSP liest XML-Daten
StyleSheet wird angewendet
Ausgabe im angeforderten Client-Format
Unterschiede JSP und ASP
JSP







Setzt auf Servlets auf
Plattformunabhängig
Jeder Webserver
z.Z. Apache, Netscape, IIS
Java Programmiersprache
Frei definierbare Tags
Datenbank: JDBC, ODBC
Java Beans
ASP







Setzt auf ActiveX auf
Nur unter Windows
Nur IIS oder Personal
Webserver
Microsoft JScript oder VBScript
Vorgegebene Tags
Datenbank: ODBC
COM-Objekte
Web-Server

Was ist zum Betrieb notwendig?

Sicherheit



Authentifizierung


Weniger wichtig
Session Managment



Zuerst zweitrangig
Später wichtig
Zwischenwerte einer Sitzung auf dem Server speichern
z.B. Warenkorb oder zuletzt erstellte Route
Cookies

Benutzerforschung (Werbepartner?)
Hersteller von Web-Servern
Server
Sept. 2000
%
Oktober 2000
%
Veränderung %
Apache
12.705.194
60,02
13.295499
59,67
-0,35
MS-IIS
4.138.551
19,55
4.491609
20,16
0,61
Netscape
1.472689
6,96
1.500.988
6,74
-0,22
Weblogic
566.509
2,68
680.332
3,05
0,37
Zeus
606.987
2,87
616.200
2,77
-0,10
Rapidsite
332.246
1,57
339.379
1,52
-0,05
Thttpd
190.371
0,90
225.175
1,01
0,11
AOLserver
201.471
0,95
151.948
0,68
-0,27
WebSitePro
103.617
0,49
105.112
0,47
-0,02
Tigershark
81.528
0,39
102.850
0,46
0,07
Vergleich Apache & MS-IIS
Apache
Microsoft IIS
+
+
o
+
o
o
+
+
+
+
+
+
+
Kostenlos
Betriebssystemunabhängig
Kein offizielles Support Center
Support über Newsgroups
Betriebssystemaufsatz
Konfigurationsdateien + GUI
Viele Informationen im Internet
HTML-Interface
Kostenpflichtig (NT, Win2000)
nur NT Server oder Win2000
Support Hotline (Kostenpflichtig)
Support über Newsgroups
Integration ins Betriebssystem
GUI-Interface
Wenig Informationen
HTML-Interface (nur NT Server)
ArcIMS
3 Tier Architektur
Komponenten auf Serverseite

ArcIMS Application Server Connectors



Servlet Connector
ColdFusion Connector
ActiveX Connector

ArcIMS Application Server

ArcIMS Spatial Server

ArcIMS Manager
ArcIMS
Application Server Connectors

Servlet Connector





Standard-Programm zur Verbindung von
ArcIMS mit dem Web-Server
Nutzt Java-Plattform-Technologie
Anfragen und Antworten in ArcXML
Keine zusätzliche Übersetzung notwendig
Windows NT und Unix
Application Server Connectors

ActiveX Connector





COM-DLL für alle COM-Programme z.B. ASP
Zus. Programme z.B. in Visual Basic, C++, Delphi usw.
Anweisungen werden in ArcXML übersetzt
Nur Windows NT
ColdFusion Connector


ColdFusion Anweisungen werden in ArcXML übersetzt
Windows NT und Unix
ArcIMS Application Server





Herzstück von ArcIMS
Verteilt alle ankommenden Anfragen
Sammelt alle Ergebnisse
Sendet Ergebnisse an Web-Server zurück
Kann mehrere Web-Server gleichzeitig bedienen
ArcIMS Spatial Server



„Arbeitstier(e)“
Beinhaltet die grundlegenden
Funktionen für die Erstellung und
den Zugriff auf Karten
Weblink


XML-Parser


Kommunikation mit dem
Application Server
Analysiert XML-Sequenzen
Data Access Manager

Verbindung zwischen dem
Spatial Server und einer Datenquelle
ArcIMS Spatial Server

Map-Services

Image Rendering


JPEG, PNG oder GIF zum Web-Server
Generiert aus





Shapefiles
ArcSDE Datenquellen
Unterstützten Bildformaten
ADRG, ASRP, BIL, BIP, BMP, GeoTiff,
GIF, Tiff, Jpeg, usw.
Karte wird im Spatial Server generiert
Feature Streaming


Shapefiles und ArcSDE-Datensätze
zum Java Applet (Komprimiert)
Karte wird vom Client generiert
ArcIMS Spatial Server

Query



Geocoding



Liefert Daten aus Datenquellen
Notwendig bei der Nutzung von
Attributen
Findet Adressen auf Karten
Basierend auf Informationen aus
Shapefiles oder ArcSDE-Datenquellen
Data Extraction



Liefert einen Ausschnitt der Daten
als Shapefiles
Wird aus Shapefiles oder
ArcSDE-Datenquellen generiert
ZIP-Format
ArcIMS Virtual Servers
ArcIMS Manager



Webseiten für den Zugriff auf alle
Server-Einstellungen
Alle Konfigurationseinstellungen in ArcXML
Drei Komponenten unter einer
gemeinsamen Oberfläche:



ArcIMS Author
ArcIMS Designer
ArcIMS Administrator


Verwaltung der Spatial Server
Veröffentlichung der Map-Services
ArcIMS Manager

ArcIMS Author

Erstellung von Konfigurationsdateien für
die Map-Services (XML) aus:




Shapefiles
ArcSDE-Datenquellen
Bildern
Möglichkeiten





Verschiedene Datenquellen – Verschiedene Layer
Polygone zeichnen
Maßstabsabhängige Darstellung
Anfragen und Geocodierung definieren
Beschriftung und Schriftplatzierung
ArcIMS Manager
<?xml version="1.0" encoding="Cp1252"?>
<ARCXML version="1.0.1">
<CONFIG>
<MAP>
<PROPERTIES>
<ENVELOPE minx="-180.0" miny="-90.0" maxx="180.0"maxy="90.0„
name="Initial_Extent" />
<MAPUNITS units="DECIMAL_DEGREES" />
</PROPERTIES>
<WORKSPACES>
<SHAPEWORKSPACE name="shp_ws-0" directory="C:\data" />
</WORKSPACES>
<LAYER type="featureclass" name="CNTRY94" visible="true„id="1">
<DATASET name="Countries" type="polygon" workspace="shp_ws-0" />
<SIMPLERENDERER>
<SIMPLEPOLYGONSYMBOL filltype="solid„
fillcolor="255,255,153"/>
</SIMPLERENDERER>
</LAYER>
...
</MAP>
</CONFIG>
</ARCXML>
ArcIMS Manager

ArcIMS Designer

Erstellung von Web-Seiten



Auswahl der Map-Services
Funktionen und Tools auf dem Web-Client
Auswahl des Viewers (HTML, Java)
ArcIMS Clients

Funktionen





Pan und Zoom
Räumliche und thematische Anfragen
Pufferung um Objekte
Distanzen auf der Karte messen
Annotation (Nur Java Clients)



Geometrie



Text und Bilder hinzufügen
Wird zum Server gesandt, aber nicht direkt integriert
Editieren und ergänzen
Wird zum Server gesandt, aber nicht direkt integriert
Adressen auffinden
ArcIMS Clients

ArcExplorer


HTML/DHTML Viewer







Eigenständiger Viewer
Nutzt Java-Script zur Übersetzung der ArcXML-Befehle
Nur Image Map-Service
Nur ein Map-Service gleichzeitig
Alle Berechnungen auf dem Server
Sourcen sind vorhanden
Ausgangspunkt für eigene Anpassungen
Java Viewers



Feature Streaming und Image Map-Services
Kombination mehrerer Map-Services möglich
Client führt einen Teil der Berechnungen durch
ArcIMS Clients

Java Standard Viewer



Java Custom Viewer



Netscape und Internet Explorer ab 4.0
Vordefinierte Tools und Funktionen
Nur Internet Explorer 4.0 und 5.0
Viewer Object Model API
Individuelle Anpassung des Viewers
2 Downloads notwendig (da Java 2 Applets)


Java Run-time Enviroment
ArcIMS Viewer Applet
ArcXML
<ARCXML version="1.0">
<REQUEST>
<GET_IMAGE>
<PROPERTIES>
<ENVELOPE minx="-180" miny="-90"
maxx="180" maxy="90" />
<IMAGESIZE width="500" height="400" />
</PROPERTIES>
</GET_IMAGE>
</REQUEST>
</ARCXML>
<ARCXML version="1.0">
<RESPONSE>
<IMAGE>
<ENVELOPE minx="-130.000" miny="24.688"
maxx="-110.000“ maxy="40.311" />
<OUTPUT file="c:\ArcIMS\Output\
World_ARCIMS19833023.gif"
url="http://maps.esri.com/maps/
World_ARCIMS19833023.gif" />
</IMAGE>
</RESPONSE>
</ARCXML>
W
e
b
S
e
r
v
e
r
J
a
v
a
S
e
r
v
l
e
t
ArcIMS
Application
Server
Vorstellung Gruppe Technik

Gruppensprecher


Schnittstellenbeauftragte


Markus Tondorf
Ariane Middel
Weitere Mitglieder



Annette Eicker
Ralf Müller
Christoph Schaefer
Aufgaben der Gruppe Technik


Webserver: Apache oder Microsoft IIS?
ArcIMS





Installation
Aufbau eines Demoprojektes
ActiveX-Connector
Möglichkeiten und Grenzen (Routenplanung)
Servlet-Connector
Java-Routenplanung
Clients:



HTML oder JAVA?
Individuelles Layout?
Schnittstelle zu anderen Gruppen
Ende
Fragen ?