从 ArcGIS for Desktop 发布地图服务

本教程的目的是将地图服务直接从 ArcGIS for Desktop 发布到 ArcGIS for Server 中。本教程与名为“在 ArcMap 中准备您的 Web 地图”的上一教程类似,需要使用 ArcGIS for Desktop,并且还增加了对 ArcGIS for Server 的要求。

从 ArcGIS for Desktop 发布 Web 地图服务有两种方法:

  • 使用您所在组织的服务器。如果您的组织有 ArcGIS for Server,您可以直接将地图服务发布到 Web 上并将其包含在 ArcGIS Online Web 地图中。也可以发布其他种类的服务,如地理处理服务。
  • 使用 ArcGIS Online。如果您的组织有 ArcGIS for Desktop 10.1 版本且 ArcGIS Online 可供组织订阅,您可以在不使用 ArcGIS for Server 的情况下发布托管的地图服务(由 Esri 托管)。这样即可轻松地将 GIS 数据转换为 Web 服务,因为无需安装和管理服务器软件。

本教程介绍了使用 ArcGIS for Desktop 和 ArcGIS for Server 的发布过程,但两种发布方法的过程基本相同。

从 ArcGIS for Desktop 发布服务

步骤:
  1. 找到在前一教程中修改并保存的名为 Massachusetts_Crime_WebMap.mxd 的文件,然后将其打开。
    Massachusetts Crime Web 地图文档
    该文件位于 Documents and Settings\User\My Documents\ArcGIS\Packages 中。
  2. 在“文件”菜单中,指向“共享为”并选择“服务”。
    “共享为”菜单选项高亮显示的“文件”菜单
  3. 接受默认设置“发布服务”,然后单击“下一步”。
  4. “共享为服务”对话框
    选择连接

    下一步骤中服务的可用性取决于您自己的 ArcGIS for Server 安装配置。当系统询问您是否选择现有连接或创建一个新连接时,您可以创建与该服务的新连接。考虑到本教程的目的,假设您已建立与本地主机的连接。

  5. 从下拉列表中选择“arcgis on localhost (publisher)”(或已建立的其他连接)。

    如果改为将其发布为面向公众的服务器地址,则您能够利用它做更多有用的工作,如保存可与其他用户共享的 Web 地图。

  6. 将服务命名为 Massachusetts_Crime_WebMap(请确保名称中没有空格)。
  7. 用于设置连接的“发布服务”面板
  8. 在下一面板中,接受默认设置 [root],然后单击“继续”。
  9. 单击“下一步”。
    用于选择服务输出位置的“发布服务”面板

    现在,您会发现自身处于“服务编辑器”中。在此处,您可以分析服务以确保其正常工作并预览服务。在此阶段,您可以直接通过 ArcGIS for Server 发布服务,或创建一个服务定义文件来保存服务以供日后发布。

    “服务编辑器”对话框
  10. 单击“分析”按钮。
    “准备”窗口中将显示警告列表

    诊断测试即会运行,以确保可以发布服务、服务以最优性能运行且符合最佳做法。

  11. 将“服务编辑器”拖走,以便可以阅读“准备”窗口的内容。

    好消息是没有阻止发布的错误,但还有四条警告和一条消息。

  12. 单击黄色惊叹号旁的加号 (+) 展开警告列表。
    “准备”窗口中展开的警告列表

    这些警告提示您的数据并未注册到服务器,并将因此复制到服务器中。由于数据集相对较小,您可以放心地忽略它们。另一低优先级消息为:州图层在所有比例范围内绘制。如果您希望保持这种情况,则也忽略该设置。

  13. 将数据注册到服务器

    作为服务器管理员,您可以选择将数据文件夹和地理数据库注册到 ArcGIS for Server。数据注册会为服务器提供一份位置列表,这些位置已经由服务器管理员验证,并可供 GIS 服务器访问。在多台机器上进行发布时,数据注册还有助于 GIS 服务器了解如何调整数据路径。如果尝试发布的某项服务引用了一个未注册位置处的数据,则在执行发布操作时,该数据将被复制到服务器。

  14. 单击“服务编辑器”中的“预览”选项卡,然后尝试平移和缩放工具以查看服务发布之后的外观及行为。
    地图服务的预览

    请注意,您的地图服务没有上下文和底图;它只是您要发布的要素而无其他内容。

  15. 关闭“预览 ArcGIS for Server”窗口。
  16. 单击“服务编辑器”中的“发布”。
    “将数据复制到服务器”对话框

    系统将显示一条消息,通知您数据将被复制到服务器中。无论您何时按此工作流进行操作,情况均如此,因为源数据不存在于您服务器之外的任何地方。您的数据集较小,而且您将一直在本地主机上工作,因此可放心地继续操作。

  17. 单击“确定”。
    “正在发布”消息框

    进度条将报告发布过程的状态。

  18. 单击“确定”,关闭确认地图已成功发布的消息。
    “服务发布结果”消息框
  19. 在 ArcMap的“目录窗口”中,确认“服务”列在“GIS 服务器”之下:此处所示的是 arcgis on local host_6080。
    “GIS 服务器”列表展开的 ArcMap 目录窗口
  20. 关闭 ArcMap,然后单击“是”保存更改。
  21. 打开位于开始 > 所有程序 > ArcGIS > ArcGIS10 > GIS 服务器 > 服务目录下的“服务目录”。
    Window 7“开始”菜单中的“服务”目录

    该列表显示 ArcGIS REST 服务目录中的实时服务。

    ArcGIS REST 服务目录
  22. 单击 Massachusetts_Crime_WebMap 链接,打开完整的服务信息面板。
    Massachusetts Crime Web 地图服务的相关信息面板
  23. 关闭目录。
  24. 打开浏览器并转至 www.arcgis.com\home,然后单击“创建地图”。
  25. 单击“添加”按钮,然后单击下拉菜单中的“从 Web 添加图层”。
    “添加”下拉菜单
  26. 复制默认的 ArcGIS Server Web 服务并将其粘贴到本地主机服务器的 URL 中。(在本示例中为 http://localhost:6080/arcgis/rest/services/Massachusetts_Crime_WebMap/MapServer。)单击“添加图层”。
    “从 Web 添加图层”对话框
  27. 使用缩放和平移工具放大马萨诸塞州。
    Web 地图中显示的地图服务
  28. 单击“显示地图内容”按钮。
    侧面板中的“显示地图内容”按钮
  29. 单击 Massachusetts_Crime_WebMap 将其展开并查看子图层。
  30. 单击“区块组”的小箭头链接,然后单击“启用弹出窗口”。
    “区块组”子图层的快捷菜单
  31. 对其他三个子图层重复该操作。

    这样,您在单击要素之后即会出现一个格式化的属性表。

  32. 单击地图上的任意要素自行对其进行测试。
  33. 显示地图要素属性的弹出窗口
  34. 单击 Massachusetts Crime 索引地图的链接并将“透明度”设置为大约 30%(或更合适的值)。
    图层属性快捷菜单上的透明度设置

至此操作结束。您刚刚发布了一个服务并确认其按预期在 ArcGIS Online 中打开。