laptop and a wrench

漏洞

The clone_items() function with the item_mapping parameter incorrectly updates the vector tile layer styleUrl when cloning web maps between ArcGIS Enterprise portal 11.5 instances.

ArcGIS API for Python
漏洞 ID 编号 BUG-000178647
已提交August 12, 2025
上次修改时间January 4, 2026
适用范围ArcGIS API for Python
找到的版本2.4.1
操作系统Windows Server
操作系统版本2022
修正版本2.4.2
状态Fixed

附加信息

In product plan

解决办法

# paste the following code into the code within steps to reproduce at the appropriate place

# Get the target Vector Tile Layer item from the target GIS

tgt_vtl_item = tgt_gis.content.get(tgt_vtl_item_id)

 

# Get the service URL from the item properties (usually .url)

vt_service_url = tgt_vtl_item.url # e.g. "https://support04.esri.de/server/rest/services/Hosted/Tile_Layer_Copy/VectorTileServer"

 

wm_data = cloned_webmap_item.get_data()

 

for lyr in wm_data.get("operationalLayers", []):

   if lyr.get("layerType") == "VectorTileLayer" and lyr.get("itemId") == tgt_vtl_item_id:

       correct_style_url = f"{vt_service_url}/resources/styles/root.json"

       if lyr.get("styleUrl") != correct_style_url:

           print(f"Updating styleUrl for: {lyr.get('title')}")

           lyr["styleUrl"] = correct_style_url

 

cloned_webmap_item.update(data=wm_data)

print("WebMap updated with correct Vector Tile Layer styleUrl.")

 

# --- Optional: Verify ---

wm_data_updated = cloned_webmap_item.get_data()

for lyr in wm_data_updated.get("operationalLayers", []):

   if lyr.get("layerType") == "VectorTileLayer":

       print(f"Title: {lyr.get('title')}")

       print(f"ItemID: {lyr.get('itemId')}")

       print(f"StyleURL: {lyr.get('styleUrl')}\n")

重现步骤

漏洞 ID: BUG-000178647

软件:

  • ArcGIS API for Python

当漏洞状态发生变化时获得通知

下载 Esri 支持应用程序

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

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项