没有合适的资源?快使用搜索试试~ 我知道了~
首页ArcGIS Server 中文文档
资源详情
资源评论
资源推荐

体系结构
ArcGIS Server 是一个发布企业级 GIS 应用程序的综合平台,提供了创建和配置 GIS 应
用程序和服务的框架,可以满足各种客户端的各种需求,这是对 ArcGIS Server 一个抽象的
描述,那么 ArcGIS Server 在 GIS 应用中具体扮演什么样的角色呢?
使用过 ArcGIS 桌面应用软件的人知道,在桌面环境中存在各种 GIS 工具可以供使用,
如展现 GIS 数据可以用 ArcMap、ArcGlobe,根据位置寻址可以使用 address locator,对数
据进行分析操作可使用 ArcToolbox 的 Geoprocessing 工具,这些包含了不同级别的 GIS 功
能,从底层来看,都是通过 ArcObjects 来实现这些的。
站在 ArcGIS Server 的角度上,我们不 再考虑要处理的数 据是 ArcMap 的 mxd 文档、
ArcGlobe 的 3dd 文档、还是 address locators 等,相应地,我们用服务的概念来对它们进行
描述,这些服务可以是 map services、globe services、geocode services,GIS 资源依托这些
服务存在,当需要在 GIS Server 上共享一个地图时,就使用该地图的 mxd 来定义一个 Map
Service。可以看出,ArcGIS Server 的目的就是宿主各种服务,并为客户端应用提供这些服
务资源,另外,ArcGIS Server 提供了一个管理程序来对服务进行控制与管理。
ArcGIS Server 体系结构可以用下图来描述:

GIS Server
宿主各种 GIS 资源,例如 maps、globes、address locators,并将它们封装为服务提供给客
户端应用。
GIS Server 本 身 包 括 两 部 分 : Server Ojbect Manager(SOM) 和 Server Object
Containers(SOCs)。通过命名可以看出,是一个 SOM 和一个或多个 SOC,客户端发送请求

到 SOM,SOM 将分配的资源提供给客户端,通过 SOM 对 SOC 进行调度与管理。
Web Server
Web Server 包含 Web 应用的部署,以及 Web 服务,它们均使用 GIS Server 上的服务资源。
Clients
这里所说的客户端是多样化的,可以是 Web 客户端、Mobile 移动设备、通过 HTTP 连接
到 ArcGIS Server Internet 服 务 或 通 过 LAN/WAN 连 接 到 ArcGIS Server Local Services 的
ArcGIS 桌面应用。
Data Server
包含 GIS Server 上所发布服务的 GIS 资源,可以是 mxd 文档、geodatabase、toolbox 等。
Manager and ArcCatalog administrators
两者都可以用来将 GIS 资源作为服务发布,并进行管理,不同的是一个是在 Web 页面上
管理,另一个在桌面 Catalog 上,在图上可以看出,它们所针对的层次有所不一样。
ArcGIS Desktop content authors
各种 GIS 资源需要使用各种 ArcGIS Desktop 软件来定制,如果需要为地图服务生成缓存,
可以用 ArcCatalog 来创建 cache。
编程框架总览
ArcGIS Server 是一个发布企业级 GIS 应用程序的综合平台,如果想对 ArcGIS Server 基
础有更多的了解,可以先看看《ArcGIS Server 体系结构 》、 ESRI( 中国 )BBS
论坛 和 ESRI
网站。这里及接下来的一系列文章将主要介绍 ArcGIS Server 开发相关的内容(如不加说明,
后文中 Server 专指 ArcGIS Server),由浅入深,充分利用 Server 的资源来构建我们的企
业级应用,同时也可以了解 Server 的优势及不足,在实际应用中扬长避短。
进行 Server 开发之前,我们首先需要了解 Server 开发的整体架构。下图(截取自官方文
档)可以看到,Server 提供了一系列的应用开发途径,从 1 到 4 难度逐步增加,当然功能和
可定制性也越来越强,我们可以充分利用 Server 提供的这些资源来构建我们的应用。

Web 应用开发
Server 为 Web 应用开发提供了一系列的开发方式,在 visual studio 2005 中可以直接使
用 Web Mapping Application template 建 立应 用, 它包 含了 Web ADF 框 架, 是学 习
Server 开发的入口。对照上面的示意图,可以这样来理解,如果想使用各种 Web 控件加上少
量代码来构建 Web 应用,可以直接使用第一种途径,这样的应用比较死板,让人感觉有点想
搭积木,程序员可能没有任何成就感,好处是开发迅速,适合入门学习或做个简单的 Server
演示。如果想在 Common API 基础上,使用各种通用的 functionality,通过各种 data
source 类型来定制 Web ADF,可以使用第二种开发途径。如果想使用 Common API,并且
需要通过 Common API 调用 speci$c API 来定制 Web ADF,可以通过第三种途径来开发。
Web Service 开发
Web Service 是什么不用再介绍,ArcGIS 提供了两种类型的 Web Service 创建方法:GIS
Web Service 和 Application Web Service。
GIS Web Service 提供了一种将 ArcGIS Server Object(Local data source)发布为
ArcGIS Server Web Service(Internet data source)的 ESRI 标准,GIS Web Service
不用于开发,通常它们是用来发布 信息和提供资源, ArcMap 就可以直接使用 GIS Web
Service 的资源而不用进行任何开发,另外 Web ADF 控件和 Common API 也可以使用 GIS
Web Service 资源。因为 GIS Web Service 基于标准 web service,它可以作为传统 web
service 来使用,ArcGIS Server 提供了 SOAP API 进行相关的开发,以后的学习中会使用到。
Application Web Service 是基于标准 web service 建立的应用,使用一种 ESRI 的 data
source 进行开发。因为 web service 没有用户接口,上图中途径一不适合这样的应用,途径
四是最适合的,因为 web service 可充分利用 ESRI 提供的各种 data source speci$c API 的
所有 functionality。

桌面客户端应用开发
ESRI 在桌面客户端应用中提供了两种实现 GIS 功能和服务的方法:ArcGIS Engine 和
data source speci$c developer APIs,上图中只有第四种途径可用于桌面客户端应用。
ArcEngine 不论是和本地 GIS 资源交互,还是使用远程数据资源,都拥有丰富的控件和众
多 API,但它在使用和分发之前必须进行授权注册,而任何 data source speci$c developer
APIs 都可以在桌面客户端应用中编程使用。
移动应用开发
移动应用和 Web 应用、web services 比较类似,但它们是为某一个特定的客户端环境而
设计,如 PocketPC。Mobile ADF 是为移动应用定制的开发框架,通常使用途径四来进行开
发,这样可以充分利用 ArcGIS Server Web services 和 SOAP API 提供的功能。
Web ADF 编程
Web ADF 全名是 Web Application Develope Framework,是 ArcGIS Server 专用的开发框架,
9.2 版本的 ArcIMS 也开始提供 ADF 的封装。完全使用 Web 控件编程几乎不能解决我们实
际项目中的问题,因此我们从《ArcGIS Server 开发系列(一)--编程框架总览》中提到的
途径二开始,即 web controls + common datasource apis。
目标:
根据查询语句实现图层信息查询
准备工作:
1.Windows XP sp2 中/英文版
2.Visual Studio 2005 中/英文版
3.ArcGIS Server 9.2( 我 打 上了 sp2 补丁), 创建 一个 ArcGIS Server 服 务 ,Map
Server 属性中更改 Pooling,使用池化连接方式,Progresses 选择“In a seperate process
for each instance(high isolation)”,我的服务为“World”
4. 利 用 vs2005 创 建 一 个 模 板 server 应 用 --Web Mapping Application , 并 更 改
MapResourceManager 属性
剩余35页未读,继续阅读












安全验证
文档复制为VIP权益,开通VIP直接复制

评论3