Esri 提供包含世界不同地区边界和人口统计信息的图层。这些图层(例如州、省、人口普查区域和邮政编码边界)包含相关的地方信息,门户成员可在他们的地图、应用程序、分析工具和 Insights for ArcGIS 中使用这些信息。
如果您已安装 Insights for ArcGIS 或者您的门户没有从 Living Atlas of the World 访问 ArcGIS Online 内容的权限,请考虑将这些图层发布到您的门户。
作为门户管理员,您可以从 My Esri 下载您所需的边界图层服务定义 (.sd) 文件,然后使用 publishboundarylayers 工具以从这些文件发布托管要素图层。
注:
运行本主题中介绍的任意工具时,必须使用内置门户管理员帐户,并通过端口 7443 来访问门户,而非通过 Web Adaptor 或负载均衡器来访问门户。
您可以从包含全部所需文件的文件夹进行发布、发布单个文件或提供文本文件格式的文件列表。确保用于安装 Portal for ArcGIS 的帐户具有该目录的读取权限。
将这些边界服务定义 (.sd) 文件发布到您的门户将带来以下影响:
- 每个 .sd 均添加为门户中的服务定义项目。如果当更新的内容可用时您希望更新边界图层,则这些文件必须保留在门户中。
- 将为您发布的每个 .sd 文件创建托管要素图层。每个托管要素图层包含多个图层。
- 服务定义项目和托管要素图层均由名为 esri_boundaries 的内部门户成员拥有。请勿将这些项目的所有权更改为其他用户。
- 默认情况下,您门户组织的所有成员均有权访问门户中的边界托管要素图层。
发布边界图层
这些图层在 Esri 主许可协议中获得授权。请在发布前阅读摘要和使用条款。
重要使用要求
- 这些图层授权为在 ArcGIS Enterprise 中供内部使用,其中包括 Portal for ArcGIS、Insights for ArcGIS 和其他连接的 ArcGIS 应用程序。
- 用户不得在 ArcGIS Enterprise 系列产品外部进行使用,或者导出数据以在断开连接的情况下在 ArcGIS 或其他应用程序中使用。
- 没有 Esri 的单独书面许可,用户不得共享图层(公开或私下)以供其他组织成员或公众在外部使用。
- 这些图层被授予两 (2) 年的使用权限,该期限从 Esri 下载之日算起。您可以每年下载最新数据以扩展许可。
- 对这些图层的所有显示都必须包括随每个图层发布的制作者名单(属性)。
执行下列步骤以获取边界文件并将其作为要素图层托管在您的门户中:
- 从 My Esri 下载包含服务定义 (.sd) 的压缩文件。
- 登录到 My Esri。
- 转到我的组织 > 下载 > 数据和内容。
- 在搜索字段中键入 Boundary 以过滤边界图层。
- 单击所需文件的下载。
- 提取已下载文件并将其放在 Portal for ArcGIS 计算机上的文件夹中。
文件名使用三个字母代码来表示文件的适用区域,并将数据适用的年份追加到名称末尾。例如,USA_Boundaries_2015 包含美国在 2015 年的边界。
移除任何您不希望上传或发布到门户的文件。或者,创建包含您希望上传和发布的文件子集列表的文本文件。设置文本文件的格式,使每行只有一个文件名;例如,要上传美国或世界的边界,文本文件应包含以下内容:
USA_Boundaries_2015 WOR_Boundaries_2015
- 打开 Portal for ArcGIS 计算机上的命令终端。
- 更改工具的位置目录。
- 运行 publishboundarylayers 工具。
在 <Portal installation directory>/tools/publishboundarylayers 中安装此工具。 此工具的语法如下:publishboundarylayers --folder <location of files> [{--files <file names>|--file <name of text file>}] --url <Portal website URL> --username <portal administrator user name> [--password <portal administrator password>]
如果您在运行此工具时未指定密码,系统将提示您向门户管理员提供密码。该用户必须是门户中默认管理员角色的成员。
如果您使用 --files 操作,请指定一个由逗号分隔的服务定义文件列表。如果您使用 --file 选项,请指定包含您要发布的边界文件列表的文本文件的名称。
在本例中,boundaryfiles 目录中的所有文件均发布到门户:
./publishboundarylayers.sh --folder /usr/tmp/boundaryfiles --url https://portal.domain.com:7443/arcgis --username portaladmin
在本例中,文件都在同一目录 (boundaryfiles) 中,但发布了两个文件:
./publishboundarylayers.sh --folder /usr/tmp/boundaryfiles --files USA_Boundaries,WOR_Boundaries --url https://portal.domain.com:7443/arcgis --username portaladmin
在本例中,文本文件 (boundarysubset.txt) 在 boundaryfiles 目录中创建。此工具将从文本文件读取文件列表,以发布边界图层的一个子集。
./publishboundarylayers.sh --folder /usr/tmp/boundaryfiles --file boundarysubset.vi --url https://portal.domain.com:7443/arcgis --username portaladmin
发布完成后,您发布的每个 .sd 文件中均存在服务定义项目和托管要素图层。
要确认项目确实存在,您可以搜索门户中名为 esri_boundaries 的内部门户成员所拥有的全部项目。在门户搜索字段中键入 owner:esri_boundaries 并搜索所有内容。
更新边界图层
在大多数情况下,边界图层更新是作为使用 publishboundarylayers 实用程序发布到您门户的新服务定义文件进行提供的。因此您可以独立使用图层并分析两个数据版本。例如,可能存在 2015 和 2017 版本的世界边界文件。但是,在极少数情况下,My Esri 上提供的服务定义文件可以更新至正确内容。在此类情况下,您可以使用 updateboundarylayers 工具下载更新的文件并进行发布。这样做将覆盖您门户中现有的托管要素图层。
如简介中所述,仅当图层的服务定义项目仍存在于门户中时,您才可以更新边界图层。
执行下列步骤以更新您门户上的边界要素图层:
- 从 My Esri 下载包含已更新服务定义文件 (.sd) 的压缩文件。
- 提取这些服务定义文件并将其放在 Portal for ArcGIS 计算机上的文件夹中。
移除任何您不希望上传或发布到门户的文件。或者,创建包含您希望上传和发布的文件子集列表的文本文件。设置文本文件的格式,使每行只有一个文件名;例如,要上传美国和世界的边界,文本文件应包含以下内容:
USA_Boundaries_2015 WOR_Boundaries_2015
- 打开 Portal for ArcGIS 计算机上的命令终端。
- 更改工具的位置目录。
- 运行 updateboundarylayers 工具。
在 <Portal installation directory>/tools/publishboundarylayers 中安装此工具。 此工具的语法如下:updateboundarylayers --folder <location of files> [{--files <file names>|--file <name of text file>}] --url <Portal home page URL> --username <portal administrator user name> [--password <portal administrator password>]
如果您在运行此工具时未指定密码,系统将提示您向门户管理员提供密码。该用户必须是门户中默认管理员角色的成员。
如果您使用 --files 操作,请指定一个由逗号分隔的服务定义文件列表。如果您使用 --file 选项,请指定包含您要发布的边界文件列表的文本文件的名称。
在本例中,目录 boundaryfiles 中的所有文件均发布到门户并将覆盖现有的图层:
./updateboundarylayers.sh --folder /usr/tmp/boundaryfiles --url https://portal.domain.com:7443/arcgis --username portaladmin
在本例中,文件都在同一目录 (boundaryfiles) 中,但只重新发布了一个文件:
./updateboundarylayers.sh --folder /usr/tmp/boundaryfiles --files WOR_Boundaries --url https://portal.domain.com:7443/arcgis --username portaladmin
在本例中,文本文件 (boundaryupdatesubset.txt) 在 boundaryfiles 目录中创建。此工具将从文本文件读取文件列表,以重新发布边界图层的一个子集。
./updateboundarylayers.sh --folder /usr/tmp/boundaryfiles --file boundaryupdatesubset.vi --url https://portal.domain.com:7443/arcgis --username portaladmin
发布完成后,现有的托管要素图层包含已更新的数据或元数据。
删除边界图层
如果您决定您的门户中不需要边界图层,您可以将其删除。您可以在门户网站中搜索该图层并将此删除,或者运行 deleteboundarylayers 工具。如果要删除多个边界图层,请使用 deleteboundarylayers 工具。
deleteboundarylayers 工具将不会删除已启用删除保护的图层。
警告:
如果您删除当前在地图、应用程序或场景中使用的边界图层,该图层将不会出现在地图、应用程序或场景中。重新发布将不会替换地图、应用程序或场景中的原有图层,因为重新发布将会在门户中创建一个带有新 ID 的新项目。
您可以使用 --files 操作提供一个由逗号分隔的待删除图层列表,或使用 --file 操作提供一个包含待删除图层列表的文本文件。
用于提供由逗号分隔的图层列表的语法如下:deleteboundarylayers {--files <layer_name_list> | --file <location_of_text_file>} --url <portalURL> --username <portal_admin> [--password password]
例如,要以名为 portaladmin 的门户管理员身份从门户 https://portal.domain.com:7443/arcgis 删除 USA_Boundaries_2015 和 WOR_Boundaries_2015 图层,请键入以下内容:
./deleteboundarylayers.sh --files USA_Boundaries_2015,WOR_Boundaries_2015 --url https://portal.domain.com:7443/arcgis --username portaladmin
用于提供包含待删除图层列表的文本文件的语法如下:deleteboundarylayers --file <location_of_text_file> --url <portalURL> --username <portal_admin> [--password password]
例如,要使用文件来删除相同的图层,请创建一个每行包含一个图层名称的文本文件(如此处所示),并在您运行工具时提供文本文件的位置和名称:
USA_Boundaries_2015 WOR_Boundaries_2015
在以下示例中,boundarylist 文件位于 /usr/data/boundaries。该文件包含即将从下列位置的门户删除的图层列表:https://webadaptorhost.domain.com/webadaptorname。
./deleteboundarylayers.sh --file /usr/data/boundaries/boundarylist --url https://portal.domain.com:7443/arcgis --username portaladmin