stevengriffith

Buffering Geometries just reloads my page.

Discussion created by stevengriffith on Apr 10, 2012
Latest reply on Apr 13, 2012 by DSwingley-esristaff
I'm sending a geometry off to a GeometryService to be buffered, and instead of buffering the geometry, the .buffer() call does not call the buffer service, but instead reloads my web page with some odd url parameters: "localhost\testmap?bufferradius=500&permitsearch=Permits&parcels=Parcels+%28Geom%29". Neither the callback nor the errorback functions are called.

What's interesting is that if I step into the dojo code for the .buffer() call, the HTTP call to the buffer service does happen, my callback function is called, but when the deferred calls unwind from the call stack, the same reload of my web page with the odd url parameters happens.

Note that this is code that had been working perfectly for some time (in fact, it was working this morning). Here's the relevant code, even though it has not changed in weeks.

        // buffer and unify geometries on selection layer
        params = new esri.tasks.BufferParameters();
        params.distances = []
        params.distances.push(graphicbuffer.value());
        params.bufferSpatialReference = map.spatialReference;
        params.outSpatialReference = map.spatialReference;
        params.unit = graphicbuffer.unit();
        params.unionResults = true;

        // list geometries to buffer
        params.geometries = [];
        for (g = 0; g < selectionObject.layer.graphics.length; g++) {
             // get the graphic's geometry
            geom = selectionObject.layer.graphics[g].geometry;
            params.geometries.push(geom);
        };

        geometryService.buffer(params, 
        function (bufferedgeometries) {
            // replace geometrys with buffered versions
            selectionObject.layer.clear();
            for (g = 0; g < bufferedgeometries.length; g++) {
                geom = new esri.Graphic(bufferedgeometries[g], selectionObject.drawtoolbar.fillSymbol);
                selectionObject.layer.add(geom);
            };
        }, function(err){
            ErrorHandler(err, "dataquery: " + where);
        });

Outcomes