The Practical Aspects of Web GIS using ArcGIS Server David Crosby – Esri Jeff Smith – Esri Garima Vyas - Esri
Goals• Esri product history and history of web GIS• Esri model for GIS on the web• What are web services?• REST and SOAP• Esri APIs• Samples and Demonstration
Web GIS – Principles and Applications • Esri Press book by Pinde Fu and Jiulin Sun • Published November 2010 • Available at Amazon.com
Esri Web Product History • ArcView IMS Late • MapObjects IMS 1990’s • ArcIMS – early 2000 (SDE and Shapefiles) - The START of Esri web collaboration with IMS services • ArcGIS Server – around 2005 • Grown parallel to technology • ArcIMS Used ActiveX, Cold Fusion, servlets • ArcGIS Server takes advantage of SOAP, REST
Web GIS • Historically, GIS was mainframes, then servers and desktops – this was expensive! • The web is an ideal platform for GIS • The web allows for collaboration - Data, maps, models, computing power!
Mashups • Discover and search online • Mix content from different sources – through SERVICES! • Not available? Make your own content and add to others to create value-added applications • Most important thing is make data available for others
1. Web Services – the Esri Approach Source: Web Applications, Principles and Applications, Esri Press 2010
What are web services? A method of communication between two electronic devices exposed over the Internet Clients consume remote objects and functionality Examples: - Data Providers: Yellow pages, search engine - Service Providers: Credit card authentication - GIS: map, locator, geodata, feature…services
How do web services work? Two primary architectures: SOAP and REST Requests and responses are made via HTTP protocol Example of a typical request/response HTTP Request Web Service Web Service Client HTTP Response
What is SOAP? Simple Object Access Protocol XML-based protocol for accessing a web service Language and platform independent Messages are negotiated and transmitted via HTTP Used in Web ADF in Server Manager web applications
What is REST? REpresentational State Transfer Not a language, rather a design pattern Services are exposed as resources Resources are available on the web over HTTP Client addresses resources via a URL
REST principles Addressable resources are referenced via a URL (usually referred to as the noun) Representations of these resources are returned in various formats, e.g. json, html, xml, etc. Resources have operations such as PUT, GET, POST, and DELETE (usually referred to as verbs)
ArcGIS Server REST API Web interface to ArcGIS Server services Resources and operations exposed via URLs Server catalog is a well-known endpoint A simple view of your ArcGIS Server - .NET = http://<host>/arcgis/rest/services - Java = http://<host>:8399/arcgis/rest/services
ArcGIS Server REST API example• Examples http://sampleserver1.arcgisonline.com/ArcGIS/rest/services http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ ESRI_StatesCitiesRivers_USA/MapServer/export?bbox=-125,6.9,- 66.1,66.8
SOAP vs. REST? REST is lightweight whereas SOAP has more XML markup REST potentially easier to implement REST is generally more agile with development REST does not require toolkits to build SOAP adheres to rigid type checking *Ultimately, they are both web services and that is what counts!