ArcGIS Enterprise v11.5 (Portal Map Viewer and Experience Builder)
I am using ArcGIS Experience Builder to recreate a web map that was originally deployed with Web AppBuilder. I’m running into an issue where pop-ups for certain layers fail to display at all in Experience Builder.
After extensive troubleshooting, I’ve isolated the problem to attribute expressions created in Map Viewer. If a layer has one or more attribute expressions defined, its pop-up will not work in Experience Builder—even when the expression fields are not included or exposed in the pop-up configuration.
Removing the attribute expressions immediately restores pop-up functionality. At this point, the only workaround I’ve found is to persist the calculated attributes directly in the geodatabase, which I’d prefer to avoid if possible.
Has anyone encountered this behavior, or is there a recommended workaround that does not require materializing these fields in the source data?
I use attribute expressions all the time so I immediately went to check some of my stuff on 11.5, and I'm not seeing this behavior at all. Maybe it's your code that's the issue?
Thanks for testing and confirming that this doesn’t reproduce in your environment. That suggests my setup may be an edge case, so I want to be very explicit about what I’m seeing.
return "Hello World";Based on this, the issue does not appear to be related to expression complexity or syntax, but rather the presence of attribute expressions created in Map Viewer when consumed by Experience Builder.
Have you checked the bug repository? (I'm not immediately finding anything that sounds similar, but maybe you'll see something. FYI I tested feature services.)
I reviewed the bug repository but did not find an issue that closely matches the behavior I’m experiencing. I’ve also done additional testing to rule out some common variables.
Summary for context:
Any MapServer service—whether it contains a single layer or multiple layers—that has any attribute expression defined will cause pop-ups to fail completely in Experience Builder. This happens regardless of how simple the expression is, and regardless of whether the attribute expression is actually exposed in the pop-up configuration. There are no browser or developer console errors when this occurs—the pop-up simply does not display.
Notably, the same web map behaves correctly in Map Viewer, and pop-ups also continue to work as expected when the map is used in a Web AppBuilder application. The issue only manifests when the web map is used within an Experience Builder app.
Hello @TimothyRudzik
A workaround is to use both types: Feature Layers? Map Image Layers? Why Not Use Both? Hybridizing Feature Layers and Map Image Layers ...
Hi @TimothyRudzik,
Thanks for reaching out. But I couldn't reproduce it. Am I missing something?
MV:
Exb:
Thanks,
Ke
Ke,
Thanks for the thorough testing and screenshots. I retried this using your very simple example to eliminate as many unknown factors as possible, but I continued to see the same behavior.
Out of curiosity, I then tested the app in a different browser. The pop-ups failed in Chrome, but worked as expected in Microsoft Edge. To dig further, I described this Chrome-vs-Edge behavior to Gemini AI. One of its suggestions was to clear the Service Worker cache in Chrome.
After clearing the Service Worker cache, the issue was resolved and the pop-ups now work correctly in Chrome as well. These were the instructions it gave me for clearing the service worker cache....
ArcGIS Enterprise and Experience Builder use Service Workers to cache app logic for speed. Sometimes, a "stuck" script in the cache prevents the pop-up logic from firing.
Open your ExB app in Chrome.
Press F12 to open Developer Tools.
Go to the Application tab.
On the left, click Storage.
Click Clear site data (this wipes the cache specifically for your Portal URL).
Refresh the page and try the pop-up again.
Hi @TimothyRudzik,
I’m glad you found a solution. If you still experience cache issues after using the app multiple times, I would recommend creating a support ticket for this.
Thanks,
Ke