Select to view content in your preferred language

Identify Widget Issues: Aliases/Names, URLs, Warning Layers

1694
11
08-12-2013 12:51 PM
NicholasMcNamara
Frequent Contributor
I like the port of the identify widget to take advantage of the Application Builder GUI. I have run into some issues with the widget, the last 2 having to do with the GUI, and the first one, I don't know.

1. I went through all my layers in my 3 services, as I have probably over 150+ total fields that identify uses. I've found a few that simply refuse to identify (I get a blank instead of <null>, even when there is data in that record). With the new GUI, I've removed the fields and added them back in, and there is still nothing. This fixed most, but not all of them (7 still broken).

I verified that the REST field names match the ones in the widget and in the geodatabase. I'm not sure what else would do it. A few of the nonworking ones have subtypes, a few are dates, a few have coded domains, none of them seem to share anything in particular. I've checked and rechecked spellings. One strange thing is that 2 of them that were not working, I changed from using the name to using the alias for the name (had to manually edit the xml), and they started working, but the others did not respond to that. I updated to 10.2 for desktop, but not Server yet, if that matters. This seems to be some kind of issue where the name is not being recognized, or there is some confusion over the name & alias in the actual table vs. the name and alias in the xml.

In essence, many of my fields still use the alias as the name like the widget used to use, and they still work, and others I've had to change to the name to work, while others respond to seemingly nothing at all.

2. I noticed something else: After adding a new layer and associated fields with the new GUI, I find that it adds an extra "/4" at the end of the URL after the /3 that was there already (the real layer ID). So it doesn't work unless I go in manually and delete it in the XML, otherwise it keeps coming back with that /4.

3. And lastly there is the issue of the warning signs on every layer that I have... those yellow triangles with the exclamation point ("layer not found in the map"). I don't know if this is related to anything, but I'd like to get rid of those. Most things work just fine, so they clearly are found in the map...clicking "Remove warning layers" wipes out everything, so that doesn't seem to be working right. My map extent clearly has at least 1 layer visible in the default zoom, but even that layer has the yellow triangle.
Tags (2)
0 Kudos
11 Replies
RobertScheitlin__GISP
MVP Emeritus
Nick,

   Number 2 is a bug in my GUI code for App Builder. It will be fixed in the next release.

Number 3 is what leads me to think that your issues are all related to Number 1.

For you to get the warning icon on layers that means that you do not have the EXACT URL (CaSe sensitivity and all) as one of your basemaps or operational layers. If the configured layer can not be matched up to a layer or a parent map service URL in the map then it will not work in the identify widget unless you have it set for onlythese = false. My suggestion is to throw out what you have a just use App Builder to create a new IdentifyWidget.xml (of course when I get the add new layer fixed this will be a lot easier).

clicking "Remove warning layers" wipes out everything, so that doesn't seem to be working right.
That is exactly as designed. If the widget can not verify that the layer is part of the current map then it gives the warning and the button does what it says. It removes all warning layers.
0 Kudos
NicholasMcNamara
Frequent Contributor
Case sensitivity! I noticed that, but didn't think it would matter, as windows never seemed to care, and the widget was working 98%. I think I'm going to manually edit the xml to fix the URLs as I have so many layers and fields in specific orders, it'd take me forever in the App Builder.

That reminds me, would it be possible to add buttons for the "Included Fields" to move to top or move to bottom? It's a lot of clicking to get each field in the order I want it in.

Thanks,

Nick
0 Kudos
NicholasMcNamara
Frequent Contributor
I tried changing the URLs, pasting in exactly what it says in REST. No change - the warnings stayed up.

I tried creating a new project and adding one layer with just one field, entirely using the application builder, browsing to the URL - no change, I get the warning on that new layer. Is there something else that would cause those error?
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Nick,

   So you are telling me that in your new test in application builder that you added a layer as an operational layer, svaed that change and then added that same layer to your identify widget and you still get the exclaimation?... Can you zip your main config.xml and the IdentifyWidget_1.xml from that viewer and send them to me?
0 Kudos
NicholasMcNamara
Frequent Contributor
So you are telling me that in your new test in application builder that you added a layer as an operational layer, svaed that change...


I had added the entire map service as I've always done (as a dynamic service), instead of individual layers (feature layer (MS). If I add just the individual layer, I no longer get the warning.

I thought it was intended to work with dynamic services and sublayers in addition to feature layers? I've been using it this way for 8 months. Is there a different config I need to use the dynamic service that I'm missing?
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Nick,

   You should definitely be able to add a dynamic map service as an operational layer and then configure the identify widget to identify an individual layer of that map service without it giving you are warning. This may all be because of the /4 issue but can you zip your main config.xml and the IdentifyWidget_1.xml from that viewer and send them to me?
0 Kudos
NicholasMcNamara
Frequent Contributor
When you asked me for the config.xml, I went in and changed the URLs in there to match, and this cleared up the warnings, and solved 1 missing identifications. The files are attached. The layers I'm still having trouble with are:

1. System Valves layer > Valve_Type field
2. Services layer > Subtype_ field
3. Water Mains layer > Dist_Type field

#3 is especially weird because I do get a result from it, but I get the wrong result. This field is the subtype field for the layer, and it works fine in my regular ArcGIS layers, but identify takes that value and looks at a coded value domain for a different field (pipe size). So instead of returning "Distribution", I might get 6". I'm not entirely sure this is an issue with the widget even, but as it's working OK in ArcMap, I'm not sure what else to look at.
0 Kudos
NicholasMcNamara
Frequent Contributor
I should probably note that all 3 of these are the Subtype Field for their layers.
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Nick,

   So are you saying that the first two do not identify at all (i.e. no results when you identify them)? Have you tried removing the subtype field and see if that makes a difference? I really wish your service was public so I could duplicate your results. As of right now I can not duplicate your issue when I create a map service with subtype'd layers and identify then.
0 Kudos