Select to view content in your preferred language

ArcGISImageServiceLayer Time Error

635
2
10-31-2011 04:00 AM
GlenReid
Deactivated User
When I use an image service in mxml like so:

<esri:ArcGISImageServiceLayer id="esriImageLayer" imageFormat="png8" visible="false"
           url="http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/World/MODIS/ImageServer"/>


everything works OK with the layer and timeSlider.  When I create the layer in actionscript:

var lyr:ArcGISImageServiceLayer = new ArcGISImageServiceLayer("http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/World/MODIS/ImageServer");
lyr.imageFormat = "png8";
lyr.visible = true;
timeSlider.createTimeStopsByTimeInterval(lyr.timeInfo.timeExtent, 1, TimeInfo.UNIT_MONTHS);
timeSlider.visible = true;


I get an error on the createTimeStopsByTimeInterval line:

TypeError: Error #1009: Cannot access a property or method of a null object reference.

Any idea as to what I'm missing here?

Thanks,
Glen
Tags (2)
0 Kudos
2 Replies
IvanBespalov
Frequent Contributor
lyr.timeInfo is NULL

Because layer is not loaded yet.

1 - Add layer to map:

map.addLayer(lyr);


or dispatch Layer load event (if you do not want to add layer to your map)

lyr.dispatchEvent(new LayerEvent(LayerEvent.LOAD, lyr));


2 - listen LayerEvent:

lyr.addEventListener(LayerEvent.LOAD, onLayerLoad, false, 0, true);
lyr.addEventListener(LayerEvent.LOAD_ERROR, onLayerLoadError, false, 0, true);

protected function onLayerLoad(event:LayerEvent):void
{
    //get lyr.timeInfo here
}

protected function onLayerLoadError(event:LayerEvent):void
{
    //trace error
}
0 Kudos
GlenReid
Deactivated User
Thanks Ivan, that was the issue.
0 Kudos