Writing GIS Applications for the WWW

The World Wide Web (WWW) gained fame as a massive, stateless, connectionless, client/server application. Browsers sent requests to Web servers to get documents. Originally, the document only contained text and graphics. Browser clients never "logged on" to the server and the connections only lasted long enough for the client to retrieve the necessary document. After transferring the document, neither the client nor the server remembered much about each other. Connectionless means that only for the duration of the retrieval of a document (or more generally the information associated with  a Uniform Resource Locator (URL)) are the client and Web server actually connected or communicating with each other. Stateless means that for normal HTTP transactions neither the client nor the server remembers much about the other. After a transaction finishes, the server forgets the client and the client is free to request any available document anywhere in the WWW. Client/server applications built on stateless and connectionless protocols are very new to GIS. For previous client/server models (like ArcView/SDE or Map Objects/SDE), a session had both state and connection. For client/server GIS software systems, the client usually maintains the state of the map. For example, when a map is displayed, it has a bounding box or extent in map coordinates. This information is critical to reporting the map coordinates of the cursor and therefore for zooming, panning, identifying, selecting and measuring. Since the client is effectively disconnected from any server (and in the future may ask many different servers to assist with spatial queries), it must continually store and update this information. In an HTML solution, this is done with hidden variables. With JavaScript or VB Script, global variables, accessible to any object, are used to share state. With Java, an object in the client remembers the current extent as a property or a variable. This paper is an introduction to writing client/server GIS applications. Our client/server model is the WWW and we focus on a typical three-tier configuration
 

Table of Contents

1. Introduction

2. Client/Server Applications for the WWW

3. GIS Servers for the WWW

4. The DRAW Command

5. Other Basic Commands

6. Writing Scripts with Basic Commands

7. The Future of Client/Server GIS


John P. Alexander
wptc 
3305 Hancock Drive
Austin, Texas 78731
Telephone: 512-459-9027
Fax: 512-452-1655
EMail: john@wptc.com 
Valerie J. Warwick
wptc 
3305 Hancock Drive
Austin, Texas 78731
Telephone: 512-459-9027
Fax: 512-452-1655
EMail: valerie@wptc.com 

©Copyright 1996,wptc, Austin, Texas