Esri Web Applications February11 2011

22
The Practical Aspects of Web GIS using ArcGIS Server David Crosby Esri Jeff Smith Esri Garima Vyas - Esri

description

GIS seminar presentation, Feb 11 by esri

Transcript of Esri Web Applications February11 2011

Page 1: Esri Web Applications February11 2011

The Practical Aspects of Web GIS

using ArcGIS Server

David Crosby – Esri

Jeff Smith – Esri

Garima Vyas - Esri

Page 2: Esri Web Applications February11 2011

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

Page 3: Esri Web Applications February11 2011

Web GIS – Principles and Applications

• Esri Press book by Pinde

Fu and Jiulin Sun

• Published November 2010

• Available at Amazon.com

Page 4: Esri Web Applications February11 2011

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

Page 5: Esri Web Applications February11 2011

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!

Page 6: Esri Web Applications February11 2011

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

Page 7: Esri Web Applications February11 2011

1. Web Services – the Esri Approach

Source: Web Applications, Principles and Applications, Esri Press 2010

Page 8: Esri Web Applications February11 2011

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

Page 9: Esri Web Applications February11 2011

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

Web ServiceWeb Service

Client

HTTP Request

HTTP

Response

Page 10: Esri Web Applications February11 2011

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

Page 11: Esri Web Applications February11 2011

Sample SOAP Message

POST /InStock HTTP/1.1

Host: www.example.org

Content-Type: application/soap+xml; charset=utf-8

Content-Length: nnn

<?xml version="1.0"?>

<soap:Envelope

xmlns:soap="http://www.w3.org/2001/12/soap-envelope"

soap:encodingStyle="http://www.w3.org/2001/12/soap-

encoding">

<soap:Body xmlns:m="http://www.example.org/stock">

<m:GetStockPrice>

<m:StockName>IBM</m:StockName>

</m:GetStockPrice>

</soap:Body>

</soap:Envelope>

HTTP Protocol

SOAP Document

HEADER (Optional)

Delivery Info.

BODY

Method Parameters

http://sampleserver1.arcgisonline.com/ArcGIS/services?wsdl

Page 12: Esri Web Applications February11 2011

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

Page 13: Esri Web Applications February11 2011

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)

Page 14: Esri Web Applications February11 2011

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

Page 16: Esri Web Applications February11 2011

SOAP and REST Requests

SOAP Request:

<?xml version="1.0"?>

<soap:Envelope

xmlns:soap="http://www.w3.org/2001/12/soap-envelope"

soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">

<soap:body pb="http://www.acme.com/phonebook">

<pb:GetUserDetails>

<pb:UserID>12345</pb:UserID>

</pb:GetUserDetails>

</soap:Body>

</soap:Envelope>

REST Request:http://www.acme.com/phonebook/UserDetails/12345

Page 17: Esri Web Applications February11 2011

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!

Page 18: Esri Web Applications February11 2011

ArcGIS APIs

• Web APIs

- ArcGIS API for JavaScript

- ArcGIS API for Flex

- ArcGIS API for Silverlight

• Device APIs

- ArcGIS Mobile SDK – Windows Mobile Phones and

Pocket PCs.

- ArcGIS API for iOS

- ArcGIS API for Windows Phone 7 (newer technology)

- ArcGIS API for Android

Page 19: Esri Web Applications February11 2011

Web Application Examples

• ArcGIS Javascript API - Summit Map(2009 ESRI Mashup Challenge Winner)

• ArcGIS Flex API - DTSAgile Exec Mashup(2010 ESRI Mashup Challenge winner)

• ArcGIS Silverlight API - Silverlight Showcase

Page 20: Esri Web Applications February11 2011

ArcGIS Viewer for Flex

Web Application Demo

Page 21: Esri Web Applications February11 2011

Questions?

Thank you!

Page 22: Esri Web Applications February11 2011