问题

问题:针对从 ArcGIS Pro 中发布的服务启用服务器对象扩展和服务器对象拦截器的选项在 ArcGIS Server Manager 或 ArcGIS Pro 中不存在

Last Published: November 20, 2020

描述

将服务器对象扩展 (SOE) 或服务器对象拦截器 (SOI) 部署到 ArcGIS Server 后,仅针对从 ArcMap 中发布的服务显示在 ArcGIS Server Manager 或 ArcGIS Pro 中启用 SOE 或 SOI 的选项,针对从 ArcGIS Pro 中发布的服务却不显示此选项。

原因

这是有意设计的。 出现这种行为的原因是针对从 ArcMap 中发布的服务而非从 ArcGIS Pro 中发布的服务构建 SOE 或 SOI。 使用适用于 .NET 或 Java 的 ArcObjects SDK 构建的 SOE 和 SOI 仅适用于从 ArcMap 中发布的服务。 自 10.6.1 版本起,从 ArcGIS Pro 中发布的服务支持使用 ArcGIS Enterprise SDK 构建的 SOE 和 SOI。

解决方案或解决方法

要允许针对从 ArcGIS Pro 中发布的服务启用 SOE 或 SOI,必须满足以下先决条件:

  1. 从 ArcGIS Pro 2.2 或更高版本中发布服务。
  2. 将服务发布到 ArcGIS Server 10.6.1 或更高版本。
  3. 必须使用 ArcGIS Enterprise SDK 而非 ArcObjects SDK 构建 SOE or SOI。

如果您拥有使用 ArcObjects SDK 构建的现有 SOE 或 SOI,则应按照 .NET 或 Java 的迁移指南将工程迁移为使用 ArcGIS Enterprise SDK 构建的工程。

注: 此过程需要开发工作。 如果您不是 SOE 或 SOI 开发人员,则需要联系 SOE 或 SOI 开发人员以进行此项更改。 使用 ArcGIS Enterprise SDK 构建 SOE 或 SOI 后,可以将其部署到 ArcGIS Server(10.6.1 或更高版本),并使用从 ArcGIS Pro(2.2 或更高版本)中发布的服务来启用 SOE 或 SOI。

您还可以通过访问 ArcGIS Server Manager > GIS Server > 扩展页面以检查扩展的提供者是 ArcMap 还是 ArcGIS Pro,从而确定是否为从 ArcMap 或 ArcGIS Pro 中发布的服务构建 SOE 或 SOI,如以下屏幕截图所示。

  • 只能使用从 ArcMap 中发布的服务来启用使用 ArcObjects(以 ArcMap 作为提供者)构建的 SOE 或 SOI。
  • 只能使用从 ArcGIS Pro 中发布的服务来启用使用 ArcGIS Enterprise SDK(以 ArcGIS Pro 作为提供者)构建的 SOE 或 SOI。

如果您需要两项服务的 SOE 或 SOI,则应使用每个 SDK 来编译单独的 SOE 或 SOI 工程,并将两个 .soe 文件都部署到服务器。
阅读关于 ArcGIS Enterprise SDK 和 ArcObjects SDK 之间区别的详细信息。

文章 ID:000024652

从 ArcGIS 专家处获得帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项

相关信息

发现关于本主题的更多内容