I'm running into serveral problems adding Feature Layer to a Web App using the LocalLayer Widget under Web AppBuilder 2.5 or 2.6 Developer Edition. I don't think that LocalLayer Widget is the problem as the errors occur prior to the call of this widget.
The task:
In a later project phase I want to add dynamically feature layers to a Web app following certain business rules. A former question in GeoNet was, how to do this. The answer was: don't do this on your own, use LocalLayer Widget (LLW) to bring additional Feature Layers to your app!
So I configured LLW for using both layers below, and configured jsons, so that LLW occurs in my local app. Good.
The base Web Map in AGOL consists of a OpenStreetMap base map and one Feature Layer
http://services2.arcgis.com/O6N5IYvqwiIIXKbZ/ArcGIS/rest/services/Bushaltestellen_Muenchen_OSM/FeatureServer/0
Now I want to add these two additional AGOL layers to my Web App via LLW:
https://services.arcgis.com/pvGPZRwU4kBQ1Sx6/arcgis/rest/services/beispielflaechen/FeatureServer/0
https://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer
The problem:
No matter, if I use proxy or not, loading layers via LLW doesn't work :-(. And as stated above: even loading my plain Web App prior to LLW is causing error messages.
What Am I doing wrong?
Base:
- WAB 2.6 Developer Edition (starting with 2.5, same symptoms)
- Visual Studio Code
- Node.js
- Web map with OpenStreetMap and 1 Feature Layer from AGOL "Bushaltestellen_Muenchen_OSM"
I registered the app for using data source http://localhost:3345/webappbuilder, redirect URIs are http://localhost:3345, https://localhost:3346.
- Optional: using PHP-Proxy (v5.6) running via grunt-php task. Works fine according to logs
Steps to reproduce the problems:
Step 1 - invoking Web App (http://localhost:3345/webappbuilder/apps/14/) --> NOK: error message(s):
_ssl: undefined
log: false
message: "Request canceled"
response: {…}
getHeader: function t()
options: Object { handleAs: "text", timeout: 180000, ioArgs: {…}, … }
url: "https://services2.arcgis.com/O6N5IYvqwiIIXKbZ/ArcGIS/rest/services/Bushaltestellen_Muenchen_OSM/FeatureServer/0/query?f=json&where=1%3D1&returnGeometry=true&spatialRel=esriSpatialRelIntersects&outFields=*&outSR=102100&resultOffset=3000&resultRecordCount=1000"
xhr: XMLHttpRequest { readyState: 0, timeout: 0, withCredentials: false, … }
__proto__: Object { … }
responseText: undefined
stack: "f@https://js.arcgis.com/3.22/init.js:111:354
https://js.arcgis.com/3.22/init.js:135:327
Step 2 - Loading additional layers via Local Layer: NOK --> Afterwards I see the two additional layers in the Layer List, but grayed out, and i cannot work with them. And again error message(s):
_ssl: undefined
log: false
message: "Request canceled"
...
Step 3 - Creating a new Web app with OpenStreetMap and this feature Layer
https://services.arcgis.com/pvGPZRwU4kBQ1Sx6/arcgis/rest/services/beispielflaechen/FeatureServer/0
is causing a different error:
"TypeError
columnNumber: 16
fileName: "https://js.arcgis.com/3.22/init.js"
lineNumber: 2061
message: "e is undefined"
stack: "_initLayer@https://js.arcgis.com/3.22/init.js:2061:16\
https://js.arcgis.com/3.22/init.js:63:275\
_initFeatureLayer@https://js.arcgis.com/3.22/init.js:2051:336
When invoking LLW again, our old friend "Request canceled" returns 😞