AnsweredAssumed Answered

Web map layers property not listing all layers in map service

Question asked by rsm_ddms on Apr 11, 2019
Latest reply on May 22, 2019 by rsm_ddms

I posted this to the ArcGIS API for Python group, but it was suggested I try my chances here.

 

I am using the ArcGIS API for Python via Jupyter.

 

I have listed the layers for a map service using the "layers" property on an ArcGISMapService object.

 

(Sorry - forgot how to past code so it keeps formatting)

layers = web_map_obj.layers

for lyr in layers:

if lyr.layerType == 'ArcGISMapServiceLayer':

   if 'layers' in lyr:
   for l2 in lyr.layers:
      print(" >>> "+str(l2.id))

 

I only get information for 2 layers out of 24. I'm sure this is the right map service, and the 2 layers that I get information for have the same id as they do in the full list I get when I directly check the map service in the portal. I've checked the json dump directly - only 2 layers are in it. It is most definitely incomplete. 

 

Obviously, I could be making an error that I can't expect anyone here to diagnose, but I think there is something unusual going on here that someone might recognize as a common newbie mistake? Is this a common problem? Might the map service be corrupted? How would I check that? When I check the  map service in the portal, I see all layers listed, and it works fine when it is loaded into a web map. Maybe the "layers" property on a web map object doesn't by default list all of the layers in the web map and I need to tell it to?

 

Bit of a Hail Mary here. Thank you for any help you may be able to provide.

 

Randy McGregor

Outcomes