ArcGIS Server Working with Consumer Viewers...2008/03/20 · ArcGIS Server Complete & interoperable...
Transcript of ArcGIS Server Working with Consumer Viewers...2008/03/20 · ArcGIS Server Complete & interoperable...
11
ArcGIS Server ArcGIS Server Working with Consumer ViewersWorking with Consumer Viewers
Jo FraleyJo Fraley
ArcGIS Server Complete & interoperable Server-Based GIS
Making GIS Knowledge Available To Anyone . . . Making GIS Knowledge Available To Anyone . . . . . . Integrates With Other Systems Via Standards. . . Integrates With Other Systems Via Standards
UseUse
ServeServe
AuthorAuthor
BrowserBrowserDesktopDesktop 3D Viewers3D Viewers
ArcGIS ServerArcGIS Server
MobileMobile EnterpriseEnterpriseEnvironmentEnvironment
OpenOpenAPIsAPIs
• Mapping• 3-D Visualization• Modeling & Analysis• Geo-Data Management
•• CompleteComplete•• InteroperableInteroperable•• ServerServer--BasedBased•• GISGIS
Web Controls
Web TierWeb Tier
Front endsFront ends
CompositeApplications
MobileApplications
Browser Applications
ArcGISExplorer
ArcGISDesktop
2D Mapping 3D Globe Geodatabase Locator Geoprocessing Image
Back endBack endGIS ServerGIS Server
Our focus in today’s Tech Update
Map Caching Map Caching WorkflowsWorkflows
JS API’s
WebServiceInterfaces
RES
T
WM
S
WFS
-T
KM
L
SOA
P
WC
S
GoogleEarth
Web Controls
Web TierWeb Tier
Front endsFront ends
CompositeApplications
MobileApplications
Browser Applications
ArcGISExplorer
ArcGISDesktop
2D Mapping 3D Globe Geodatabase Locator Geoprocessing Image
Back endBack endGIS ServerGIS Server
ArcGIS Server 9.2 and Google Earth
Map Caching Map Caching WorkflowsWorkflows
JS API’s
WebServiceInterfaces
RES
T
WM
S
WFS
-T
KM
L
SOA
P
WC
S
GoogleEarth
Review: What is a Web service?Review: What is a Web service?
•• Standard way of integrating Web based applications Standard way of integrating Web based applications using XML, SOAP, WSDL, and UDDIusing XML, SOAP, WSDL, and UDDI
•• Share business logicShare business logic•• Language neutralLanguage neutral•• Operating system neutralOperating system neutral
55
WebServices
SOAPWSDL
UDDI
Enablesdiscovery of Is accessed
using
DescribesEnables
Communicationbetween
Binds to
Review: What is XML?Review: What is XML?
•• Extensible Markup LanguageExtensible Markup Language•• Customized tagsCustomized tags•• Enables theEnables the
–– DefinitionDefinition–– TransmissionTransmission–– ValidationValidation–– InterpretationInterpretation
of data between applications and between organizations.of data between applications and between organizations.
66
Review: What is SOAP?Review: What is SOAP?
•• Used to stand for Used to stand for ‘‘Simple Object Application ProtocolSimple Object Application Protocol’’•• Application communication over the InternetApplication communication over the Internet•• XML Messages over HTTPXML Messages over HTTP•• Web StandardWeb Standard
77
Review: What is WSDL?Review: What is WSDL?
•• Web Services Description LanguageWeb Services Description Language•• XMLXML--based languagebased language•• Describes what functions are availableDescribes what functions are available
88
Review: What is UDDI?Review: What is UDDI?
•• Universal Description, Discovery and IntegrationUniversal Description, Discovery and Integration•• RegistryRegistry•• Businesses can publish service listing on the internetBusinesses can publish service listing on the internet•• Discovery of servicesDiscovery of services
99
How does this work?How does this work?
1010
WebServices
SOAPWSDL
UDDI
Enablesdiscovery of
Is accessedusing
Describes
EnablesCommunication
between
Binds to
Publish a servicePublish a service
1111
http://jfraley/arcgis/services/WashingtonDC/MapServer
1212
ExportMapImage
1313
ExportMapImage Request
1414
http://jfraley/arcgisoutput/_ags_map3de394f7432....jpg
ExportMapImage Response
1515
http://jfraley/arcgisoutput/_ags_map3de394f7432....jpg
How do we integrate with Google Earth?How do we integrate with Google Earth?
•• KML KML –– Keyhole Markup LanguageKeyhole Markup Language
•• SOAP SOAP
1616
ArcGIS Server 9.2
KMLKML
1717
http://jfraley/arcgis/services/ArcGIS_Explorer/OR_Ecoregions/MapServer/KmlServer
SOAPSOAP
1818
Web Controls
Web TierWeb Tier
Front endsFront ends
CompositeApplications
MobileApplications
Browser Applications
ArcGISExplorer
ArcGISDesktop
2D Mapping 3D Globe Geodatabase Locator Geoprocessing Image
Back endBack endGIS ServerGIS Server
Questions?
Map Caching Map Caching WorkflowsWorkflows
JS API’s
WebServiceInterfaces
RES
T
WM
S
WFS
-T
KM
L
SOA
P
WC
S
GoogleEarth
Web Controls
Web TierWeb Tier
Front endsFront ends
CompositeApplications
MobileApplications
Browser Applications
ArcGISExplorer
ArcGISDesktop
2D Mapping 3D Globe Geodatabase Locator Geoprocessing Image
Back endBack endGIS ServerGIS Server
ArcGIS Server 9.3 and Google Earth, Microsoft Virtual Earth, and Google Maps
Map Caching Map Caching WorkflowsWorkflows
JS API’s
WebServiceInterfaces
RES
T
WM
S
WFS
-T
KM
L
SOA
P
WC
S
GoogleEarth
What is REST?What is REST?
•• Representational State TransferRepresentational State Transfer•• Simple InterfaceSimple Interface•• Requests to the REST API are through HTTP GETSRequests to the REST API are through HTTP GETS•• Hierarchy of ResourcesHierarchy of Resources•• Browser is the new command lineBrowser is the new command line
2121
ArcGIS Server 9.3 REST APIArcGIS Server 9.3 REST API
•• All GIS Services are exposed as resourcesAll GIS Services are exposed as resources–– Service level metadataService level metadata
•• Some resources have operationsSome resources have operations–– Map Service (export, find, identify)Map Service (export, find, identify)–– Map Service Layers (query)Map Service Layers (query)–– Image Services (export)Image Services (export)–– Geocode Service (findAddressCandidates, Reverse Geocode)Geocode Service (findAddressCandidates, Reverse Geocode)–– Geoprocessing (execute, submitjob)Geoprocessing (execute, submitjob)–– Geometry Service (project, simplify, and others)Geometry Service (project, simplify, and others)
2222
ArcGIS Server 9.3 REST APIArcGIS Server 9.3 REST API
•• Resources and operations results can be returned as:Resources and operations results can be returned as:
–– HTML (Services ExplorerHTML (Services Explorer--default)default)
–– IMAGE (direct streamed image)IMAGE (direct streamed image)
–– KML (Google Earth, Google Maps, Virtual Earth)KML (Google Earth, Google Maps, Virtual Earth)
–– JSON (developer)JSON (developer)
•• JavaScript Object NotationJavaScript Object Notation
2323
Give me an example…
• Base Map URL: http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Petroleum/KGS_OilGasFields_Kansas/MapServer/
• Export operationbaseUrl/export?bbox=-102,34.7,-94,42&f=image
Exports map based on query parameters specified in the
URL
Give me an example…
{ "href" : " http://sampleserver1.arcgisonline.com/arcgisoutput/_ags_map94286ed135fa43229455188ecb140e9a.png ",
"width" : 400,
"height" : 400,
"extent" : { "xmin" : -102.0, "ymin" : 34.35, "xmax" : -94.0, "ymax" : 42.35, "spatialReference" : {"wkid" : 4326} },
"scale" : 8405265.02512876 }
baseUrl/export?bbox=-102,34.7,-94,42&f=json
Services ExplorerServices Explorer
2626
Services ExplorerServices Explorer
2727
2828
2929
3030
UC 2007 Tech SessionsUC 2007 Tech Sessions 3131
http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Locators/ESRI_Geocode_USA/GeocodeServer/findAddressCandidates
3232
http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Locators/ESRI_Geocode_USA/GeocodeServer/findAddressCandidates?Address
=8615+westwood+center+dr&City=vienna&State=va&Zip=&f=html
ArcGIS Server Supports MashupsSupporting Consumer and Enterprise mashups
DesktopSupported Web ClientsSupported Web Clients ArcGIS ClientsArcGIS Clients
Consumer MappingConsumer Mapping
Mashup
Virtual Earth\Google Maps
Google Earth
Explorer
OpenLayersOpenLayers
Web Map
Yahoo PipesYahoo Pipes
Adobe Flex/Java Fx/SilverlightAdobe Flex/Java Fx/Silverlight
Other Web ClientsOther Web Clients
RESTREST
RESTREST
RESTREST
REST/
SOAP
REST/
SOAP
KML/REST
KML/RESTSOAPSOAP
How do we integrate with Google Earth?How do we integrate with Google Earth?
•• KML KML –– Keyhole Markup LanguageKeyhole Markup Language
•• SOAP SOAP –– Simple Object Application ProtocolSimple Object Application Protocol
•• KML/RESTKML/REST
3434
ArcGIS ArcGIS 9.29.2
New @New @ArcGIS 9.3ArcGIS 9.3
3535
3636
3737
UC 2007 Tech SessionsUC 2007 Tech Sessions 3838
3939
Front endsFront ends
CompositeApplications
MobileApplications
Browser Applications
ArcGISExplorer
ArcGISDesktop
ArcGIS Server 9.3 (Front ends) More accesible to web developers
• New Java Script– Lower web developer entry level bar– Free web development vs licensed web development– ArcGIS Server is Google Maps and Virtual Earth friendly– Available online
Complete collection of JavaScript librariesComplete collection of JavaScript librariesfor building web mapping applicationsfor building web mapping applicationsthat access ArcGIS Server services.that access ArcGIS Server services.
JS API’s
GoogleEarth
Building Mashups with the JavaScript APIBuilding Mashups with the JavaScript API
4141
Give me an exampleGive me an example……
4242
4343
4444
UC 2007 Tech SessionsUC 2007 Tech Sessions 4545
Google Maps
4646
Web Controls
Web TierWeb Tier
Front endsFront ends
CompositeApplications
MobileApplications
Browser Applications
ArcGISExplorer
ArcGISDesktop
2D Mapping 3D Globe Geodatabase Locator Geoprocessing Image
Back endBack endGIS ServerGIS Server
Questions?
Map Caching Map Caching WorkflowsWorkflows
JS API’s
WebServiceInterfaces
RES
T
WM
S
WFS
-T
KM
L
SOA
P
WC
S
GoogleEarth