The ArcGIS Server SOAP API is an XML-structured language for communicating with
ArcGIS Server services based on the SOAP standard. Server objects and some
server object extensions have a defined set of SOAP elements and attributes,
known as a schema, they can utilize to process SOAP requests and
generate SOAP responses. Since this capability is enabled at the server object
level, as a developer you can interact with a server object using SOAP without
using a Web service. ArcGIS Server Web services expose this capability via a
Web service endpoint, but the SOAP request and response are still handled by
the server object or server object extension directly. The easiest way to work
with the SOAP API is to use a SOAP toolkit to generate SOAP proxies and value
objects in the native development environment. Instead of managing SOAP strings
directly, you can use the native proxy and value objects to work with ArcGIS
Server services via a Web service endpoint or via the SOM.
The SOAP API is designed to make stateless use of ArcGIS Server services.
As a result, methods on the stateless ArcObjects interfaces implemented
by a server object or extension mirror the methods on a SOAP
proxy. For example, both the MapServer SOAP proxy and the
IMapServer ArcObjects COM interface expose the ExportMapImage
method. While the protocol and types are different, the
usage is generally the same. A call to the ExportMapImage method
generates a new map image without inherently storing or changing the state
of the map server object. A list of the complimentary SOAP proxy and
ArcObjects COM interfaces are provided in the ArcGIS Server Web Services
Implementation section below.
The SOAP API discussion provided in this help system assumes
that have you access to ArcGIS Server components and the Web ADF
runtime. The Web ADF runtime includes pregenerated SOAP proxies and
value objects which enable the use of the SOAP API with ArcGIS
Server Web services (Internet connection) or with the server object directly
(Local connection). These pregenerated objects are
included in the ESRI.ArcGIS.ADF.ArcGISServer.dll and utilized internally
by the Web ADF. Using the SOAP API with an Internet connection is
possible for both ESRI (e.g. Web ADF) and non-ESRI clients (clients who
are not using an ESRI product). For non-ESRI clients the SOAP API proxies
and value objects can be generated by consuming the service WSDL with a SOAP
toolkit, included with many developer environments. ESRI clients can
use the pregenerated objects or, like non-ESRI clients, dynamically
generate their own. Using the SOAP API with a local connection is only
possible with an ESRI client. It requires connection libraries included
with the Web ADF and ArcGIS Engine runtime, ArcObjects COM proxies, and SOAP
proxies to enable serialization of SOAP over DCOM. This help system
will discuss the server-side architecture of the SOAP API and its use
within the context of a Local and Internet connection. Regardless of
the connection type or developer environment, the same SOAP objects,
methods and properties are utilized. As a result, a standalone
SOAP SDK is available outside this help system for
both ESRI and non-ESRI clients. The SOAP SDK includes
ArcGIS Server Web service discussions and a detailed SOAP API library reference
and can be found in the following locations:
- The SOAP SDK is available on the ArcGIS Server Resource Center for all developers with Internet access.
- Each ArcGIS Server instance configured for use with ArcGIS Server includes the SOAP SDK. When installing ArcGIS Server with the Web Applications option (default), an ArcGIS instance will be configured with a Web server and include the SOAP SDK. If installed on a Web server using the default instance name (ArcGIS) the SOAP SDK will be available at http://<servername>/ArcGIS/SDK/SOAP.
- When installing the Web ADF with the integrated help option, the SOAP SDK documentation is included in <ArcGIS Install Location>\DeveloperKit\Help\SOAP. Program menu item links to the SOAP help system will point to this location on disk.