Select to view content in your preferred language

Changes for coded value domains in a feature class don't sync to ExperienceBuilder

322
5
04-16-2025 01:35 AM
Mateo_Neira
Emerging Contributor

We’ve configured an Experience Builder app that’s linked to a Web Map, which references a feature layer. The feature layer includes a field with a coded value domain. In Experience Builder, we’ve set up a data view that filters records based on this field.

Recently, we updated the domain values in the underlying feature layer (e.g., changed or added coded values for the field). However, these changes aren’t being reflected in Experience Builder. When we try to edit the data view to apply the updated filters, the filter options still show the old domain values.

We spoke to ESRI about this, and their reply was to "create new web maps" - while this does work, it's a substantial amount of work given that 1) the original web map has a lot of configurations, filters, edit features etc that will need to be replicated. 2) We would need to then reconfigure the Experience Builder application (which also contains quite a substantial set of widgets/features that would need to be changed), 3) there are a host of other applications that rely on the original web map which would have to be reconfigured as well. 

This to me seems like a bug on the web maps / experience builder that should be addressed. As a user I would expect any changes made to underlying feature layers, and web maps to be reflected in all other applications that rely on them - and not have to re-build everything anytime a minor change to one of them is made. 

 

0 Kudos
5 Replies
AustinAverill
Frequent Contributor

Another potential work around might be to remove the layer, save the map, then readd the layer. From my past experience it seems that Experience Builder queries the layers from the map by name rather than index position, and as such widgets and all seem to reconnect so long as the appropriately named layer with the same underlying schema is added back.

If this seems to be a possible work flow, it would not be much effort to create a short script that could grab the definition of the layer, popups, etc. etc., remove it from the map, then readd it. Could quite possibly save you a bit of time and headaches. 

Mateo_Neira
Emerging Contributor

Thanks Austin for the suggestion. I gave it a go, but unfortunately ExperienceBuilder doesn't recognize that it's the same layer and all configured widgets lose the connection and all configurations are lost. 

Interestingly, I tested updating the domains after going though the process of removing and re-adding the layer back to web map. and with the newly added layer - any domain changes do propagate down to the Experience Builder. I'm wondering now if it's some specific arcade expression on my map - or another config, that is preventing this on the original web map. 

0 Kudos
Mateo_Neira
Emerging Contributor

0 Kudos
DavidSolari
MVP Regular Contributor

Services that use registered EGDB data cache the domain info from the geodatabase and don't actively update that cache. You can force a service to grab the updated domain definition by restarting it from the server manager. I have no idea why your support rep said to build an entirely new map, that's an unacceptable workflow for any org that has more than a few projects to manage.

EdwinRoa
Esri Contributor

Hi, 

Alternatives that can be useful:

1. Change WebMap Configuration by ArcGIS Assistant: With this option you can review and change Json Configuration from WebMap without remove or add new layers to WebMap.  Before change Json you must be backup Jsons.

2. Change WebMap Using Python.  In ArcGIS Pro Notebook, run a script to do the work.  

Probably the first is best option for you.

 

0 Kudos