Select to view content in your preferred language

Popup bug on dynamic layer?

4349
18
Jump to solution
09-11-2012 06:26 PM
RhettZufelt
MVP Notable Contributor
Not sure if this is a bug, or the right forum, but think it is more API related.

I imported a brand new FV3.0 uncompiled to make sure it wasn't due to any of my "customizations".

Modified the existing config to load the esri fire mapservice as type="feature" and type="dynamic"

    <geometryservice url="http://tasks.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer" />      <!-- UI elements -->     <widget left="10"  top="50"    config="widgets/Navigation/NavigationWidget.xml" url="widgets/Navigation/NavigationWidget.swf"/>     <widget right="-2" bottom="-2" config="widgets/OverviewMap/OverviewMapWidget.xml" url="widgets/OverviewMap/OverviewMapWidget.swf"/>     <widget right="20" top="55"    config="widgets/MapSwitcher/MapSwitcherWidget.xml" url="widgets/MapSwitcher/MapSwitcherWidget.swf"/>     <widget left="0"   top="0"     config="widgets/HeaderController/HeaderControllerWidget.xml" url="widgets/HeaderController/HeaderControllerWidget.swf"/>      <map wraparound180="true" initialextent="-14083000 3139000 -10879000 5458000" fullextent="-20000000 -20000000 20000000 20000000" top="40" addarcgisbasemaps="true">         <operationallayers>       <layer label="Dynamic Fires" type="dynamic" visible="false" alpha="1" visiblelayers="0"   url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Fire/Sheep/MapServer">   <sublayer id="0" popupconfig="popups/PopUp_Fires.xml"/>  </layer>                 <layer label="Feature Fires" type="feature" visible="true" alpha="1.0"                    popupconfig="popups/PopUp_Fires.xml"                    url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Fire/Sheep/MapServer/0"/>          </operationallayers>     </map>


If I turn on the type="feature", click on a point/icon, it will popup the info and let me click the zoom to button and it will zoom there (at least until I get to the last LOD).  I can click elsewhere in the map all I want (as if panning around the map), then click on the zoom to button (since the popup window is still active), and it will again zoom to the point.

However, if I try the same thing with type="dynamic", it will select the point and show the popup window.  If I click ANYWHERE else on the map, then click the zoom to button, I get the following error:

TypeError: Error #1009: Cannot access a property or method of a null object reference.  at com.esri.ags.skins::PopUpRendererSkin/zoomToButton_clickHandler()  at com.esri.ags.skins::PopUpRendererSkin/__zoomToButton_click()


So, it seems to be losing its mappoint geometry when you click elsewhere on a dynamic layer, but not a feature layer?
Has anyone else seen this behaviour, and if so, is there a fix?

Thanks again,

R_
Tags (2)
0 Kudos
1 Solution

Accepted Solutions
RhettZufelt
MVP Notable Contributor
Turns out that if you don't have the debugger version installed, it just IGNORES the zoom in function rather than throwing the series of errors.

It has been logged as bug NIM084978.

R_

View solution in original post

0 Kudos
18 Replies
Shingo-Ikeda
Regular Contributor
Hi R,

I have exact same error message, it seems to stem from the Flex api that we don't have control over.

Shingo
Shingo Ikeda
Geospatial Data Scientist/Developer - Geographical Information Platform
Global Power Generation - Digital Satellite USA and Canada
0 Kudos
RhettZufelt
MVP Notable Contributor
Turns out that if you don't have the debugger version installed, it just IGNORES the zoom in function rather than throwing the series of errors.

It has been logged as bug NIM084978.

R_
0 Kudos
Shingo-Ikeda
Regular Contributor
Turns out that if you don't have the debugger version installed, it just IGNORES the zoom in function rather than throwing the series of errors.

It has been logged as bug NIM084978.

R_


Hi Rhett,

When user clicks on a dissolved segment layer to identify and zooms in or out, flex viewer app crashes with white exclamation mark - aka GCOD. As Robert has noticed, it seems the cause is due to the glow filter applied based on its returned geometry from query that goes out of map extent.

The identify mouseClick event highlights segment correctly, but as soon as I try to zoom, it crashes with GCOD. Have you found any workaround until the new Flex API is released?

Thanks,
Shingo
Shingo Ikeda
Geospatial Data Scientist/Developer - Geographical Information Platform
Global Power Generation - Digital Satellite USA and Canada
0 Kudos
RhettZufelt
MVP Notable Contributor
Are you talking about the identify widget or just clicking on a map feature to fire the normal popup window?

This post is about the popups having an issue with the dynamic layers, and only when I have clicked elsewhere on the map, then try to "Zoom to" button on the popup window.  I have never seen the GCOD using the popups, only with the identify widget before it was fixed.

I have tried to make it crash by clicking/zooming around like mad, but can't reproduce the results.

R_
0 Kudos
Shingo-Ikeda
Regular Contributor
Are you talking about the identify widget or just clicking on a map feature to fire the normal popup window?

This post is about the popups having an issue with the dynamic layers, and only when I have clicked elsewhere on the map, then try to "Zoom to" button on the popup window.  I have never seen the GCOD using the popups, only with the identify widget before it was fixed.

I have tried to make it crash by clicking/zooming around like mad, but can't reproduce the results.

R_


Yes. I initially was doing exactly the same as your approach by clicking/zooming like mad, but I noticed that issue persists in the normal popup window as well. Just clicking on a map feature (in my instance dissolved long segment) and zoom (while popup is open) causes app to crash app immediately.
Shingo Ikeda
Geospatial Data Scientist/Developer - Geographical Information Platform
Global Power Generation - Digital Satellite USA and Canada
0 Kudos
RhettZufelt
MVP Notable Contributor
Not sure what you mean about dissolved long segment.

I have a line feature class from a FGDB, published as a service.  The longest single line in the file is 38,000m long.  I can click on that to get the popup, then zoom to my hearts content without issues.  The only issue I get is if I click off the feature first (still keeps it highlighted, but loses geometry) then hit the zoom button, I get a null value error, but only with the debugger version of player.

What is a "dissolved long segment", and how are you zooming?  Do you mean the Zoom to button, the mouse wheel, the navigation widget?

For now, I can't reproduce,

R_
0 Kudos
Shingo-Ikeda
Regular Contributor
Sorry for the confusion. I publish a segment layer that resulted from the attribute "dissolve" operation. These segments tend to have a long stretch of vertices compared to its original data. Here is the my method of producing the error:

1) Select a segment
2) Zoom to the segment using mouse wheel, navigation widget, or [shift] draw rectangle until segment's both ends are out of map extent.
3) Unselect and select the segment again.
4) Use mouse wheel, or [Shift] rectangle to zoom again.
5) You will get GCOD.

I tested with IE, Firefox and Chrome and seeing the same error.
Shingo
Shingo Ikeda
Geospatial Data Scientist/Developer - Geographical Information Platform
Global Power Generation - Digital Satellite USA and Canada
0 Kudos
RhettZufelt
MVP Notable Contributor
Shingo,

Ok, I can now somewhat reproduce your results.  It seems that with pretty much any of my longer line segments, if I follow your directions and then, after un-selecting, re-selecting it If I try to jump several zoom levels (LODs) at once I will get the GCOD.

I can not make it do it with just one zoom click, or a scroll, but, if both ends are out of the extent and I zoom in multiple, GCOD.

No idea why/where this is happening in the code, but I can make it happen consistantly.

R_
0 Kudos
Shingo-Ikeda
Regular Contributor
Rhett,

I am assuming this is happening in geometry that are returned from the
com.esri.ags.tools.DrawTool that user don't have control over. The data component is used in the PopUpRendererSkin.mxml, but I don't think the skin is the issue since the segments are already selected and glow filter is applied from the selected geometry. It seems to be happening even if you have firefox debugger installed. When I used debugger, right before it crashes, it releases warning:

Warning: Filter will not render.  The DisplayObject's filtered dimensions (39447, 66380) are too large to be drawn.

As you mentioned, this issue seems to be resolved in the 3.1, but only workaround I found so far is to remove layer popup and use custom Identity tool such as Identify Widget.

Thanks,
Shingo
Shingo Ikeda
Geospatial Data Scientist/Developer - Geographical Information Platform
Global Power Generation - Digital Satellite USA and Canada
0 Kudos