laptop and a wrench

漏洞

Unable to upgrade the Web AppBuilder for ArcGIS (Developer Edition) 2.8 app to the 2.9 version if the app contains the Edit widget.

上次发布: July 1, 2019 ArcGIS Web AppBuilder developer edition
漏洞 ID 编号 BUG-000116884
已提交September 18, 2018
上次修改时间July 29, 2025
适用范围ArcGIS Web AppBuilder developer edition
找到的版本2.9
操作系统Windows OS
操作系统版本N/A
修正版本2.11
状态Fixed

解决办法

Workaround (modifying the VersionManager.js of the Edit widget in 2.9/2.10 WebApp Builde)r:

 

NOTE : The Modified VersionManager.js is attached to the bug files

 

  1. Be sure WebApp Builder is not running
  2. Go in the folder client\stemapp\widgets\Edit in the 2.10 webapp builder folder
  3. Make a backup of VersionManager.js
  4. Modify the 2.9 section in VersionManager.js for this:

version: '2.9',

   upgrader: function(oldConfig){

    var newConfig = oldConfig;

    var i;

    var layerOrTableInfos = newConfig.editor.layerInfos.concat(newConfig.editor.tableInfos);

 

    for(i = 0; i < layerOrTableInfos.length; i++) {     

     var layerOrTableInfo = layerOrTableInfos[i];

     if (typeof layerOrTableInfo !== "undefined") {

      layerOrTableInfo.allowCreate = true;

      layerOrTableInfo.allowDelete = true;

     }

    }

 

    return newConfig;

   }

5. Launch WebApp Builder and do the import.

Explanation of the issue:

The problem is on the concat tableInfos and layerInfos when tableInfos is empty(undefined).

 

The variable layerOrTableInfos will have a undefined at the last position in the array(for the tableInfos) and the layerOrTableInfo.allowCreate will crash on that because the tableInfos is undefined.

 

I have added a check for any undefined

重现步骤

漏洞 ID: BUG-000116884

软件:

  • ArcGIS Web AppBuilder developer edition

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

下载 Esri 支持应用程序

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

获取来自 ArcGIS 专家的帮助

联系技术支持部门

下载 Esri 支持应用程序

转至下载选项