3.14 Annotation Issue
I installed 3.14 this morning and upon opening my site in REST Manager, it informed me that all my annotation "group layers" were invalid.
"The configured layer "x" does not exist in the map service "y". it may have been removed, renamed or moved into or out of a group layer."
Inspection of my Sites directory REST endpoint gave me an error:
"The site with ID "X" failed to initialize. The given layer (Name: "x") is a group layer. Only layers of type Geocortex.Essentials.SingleLayer are accepted.
I have quite a few other group layers in my map service and they are unaffected, but clearly somethin is up with the annotation layers. Can you confirm this? Is there a work around?
Geoff
-
Geoff, I ran into the exact same thing. After making a backup of the site, I went ahead and removed the layer, and saved the site. This fixed the problem - the map service is still included in the site, and works fine.
Just make sure you backup your site.xml first in case you have problems.
Chris
0 -
Chris
When you say you removed the layer and saved the site...do you mean you removed the annotation layer from your site? Doesn't that effectively mean you aren't including it anymore in your site? I don't have that option.
Since my annotation layer is buried in a group layer, what I did was:
- remove the group layer from the "Add/Remove Layers" tab in Manager and save the site. My configuration hazard triangle goes away...site config is good.
- I now re-include the group layer back to the site and submit layer changes. This triggers Missing Layer errors indicating again that my annotation does not exist in my map service..when clearly it does
- No annotation
Geoff
0 -
Geoff, I spoke too soon when I said I saw the exact same behavior. I have a map service with a single annotation featureclass which has 7 sublayers. When I first opened the site in Site Manager after upgrading (to GE 1.4, SL 1.9), it reported that it couldn't find the annotation layer (can't remember the exact message), and it gave me a check box to remove the layer. I removed the layer here, and saved my site, and closed Site Manager. I figured I'd get it working wothout the annotation, then try adding it back in. But when I went back into Site Manager, there were no errors, and the original annotation layer in the map service was there. It shows up fine in the website.
Not the same exact issue you have, but I'm guessing they are related...
Chris
0 -
I found a related issue to this...but it only seems to be with ArcGIS 10.1 sp1 and 3.14
When navigating a map service through Silverlight viewer, with a map service that contains both annotation, and a dynamic layer for turning on/off labels:
In 10.1, in the export rest endpoint of the mapservice, the annotation gets sent to the arcgis api through the dynamic layers property. It will send all the sub layers to the POST, like so:
[{"id":2,"source":{"type":"mapLayer","mapLayerId":2}},{"id":3,"source":{"type":"mapLayer","mapLayerId":3}},{"id":4,"source":{"type":"mapLayer","mapLayerId":4}},{"id":5,"source":{"type":"mapLayer","mapLayerId":5}},{"id":6,"source":{"type":"mapLayer","mapLayerId":6}},{"id":7,"source":{"type":"mapLayer","mapLayerId":7}},{"id":8,"source":{"type":"mapLayer","mapLayerId":8}},{"id":9,"source":{"type":"mapLayer","mapLayerId":9}},{"id":10,"source":{"type":"mapLayer","mapLayerId":10}},{"id":11,"source":{"type":"mapLayer","mapLayerId":11}},{"id":12,"source":{"type":"mapLayer","mapLayerId":12}},{"id":13,"source":{"type":"mapLayer","mapLayerId":13}},{"id":14,"source":{"type":"mapLayer","mapLayerId":14}},{"id":15,"source":{"type":"mapLayer","mapLayerId":15}},{"id":16,"source":{"type":"mapLayer","mapLayerId":16}},{"id":17,"source":{"type":"mapLayer","mapLayerId":17}},{"id":18,"source":{"type":"mapLayer","mapLayerId":18}},{"id":19,"source":{"type":"mapLayer","mapLayerId":19}},{"id":84,"source":{"type":"mapLayer","mapLayerId":84}}]
In this case layers 2 - 19 are the anno sublayers.
But in 10.1 sp1with 3.14, geocortex only holds the GroupLayer of the anno, and no sublayers, and ends up making the call of:
[{"id":1,"source":{"type":"mapLayer","mapLayerId":1}},{"id":84,"source":{"type":"mapLayer","mapLayerId":84}}]
(my point being in 10.1, all sub layers get called, in 10.1 sp1, only the main anno layer gets included, brining back no annotation from the map service). My solution was to add my map service again, only display annotation layers. This then makes the rest endpoint call of
layers: show:1
meaning just the parent anno layer gets shown.
0
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.
Kommentare
4 Kommentare