[OpenLayers-Trac] [OpenLayers] #3267: Use of sld_body in WMS request with singleTile:true parameter causes cache of old layers when pan or zoom map

OpenLayers trac-20090302 at openlayers.org
Wed Apr 20 15:16:17 EDT 2011


#3267: Use of sld_body in WMS request with singleTile:true parameter causes cache
of old layers when pan or zoom map
----------------------+-----------------------------------------------------
 Reporter:  clacerda  |       Owner:  euzuro      
     Type:  bug       |      Status:  new         
 Priority:  critical  |   Milestone:  2.11 Release
Component:  Layer     |     Version:  2.10        
 Keywords:            |       State:              
----------------------+-----------------------------------------------------
 Use of sld_body in WMS request with singleTile:true parameter causes cache
 of old layers when pan or zoom map.

 This a the test case:

 layer1 = new OpenLayers.Layer.WMS("TRAFO", wmsServer,{
            layers: 'TRAFO',
            styles: '',
            format: 'image/png',
            transparent: true,
            sld_body:sldTrafo.getSLD()//returns a SLD
        }, {
             'opacity': 1,
             'isBaseLayer': false,
             singleTile:true,
             tileOptions: {maxGetUrlLength: 2048}
        });
 layer2 = new OpenLayers.Layer.WMS("Trafo2", wmsServer,{
                layers: 'TRAFO',
                styles: '',
                format: 'image/png',
                transparent: true
                //sld_body:sldTrafo.getSLD() //call without SLD using from
 server
        }, {
                 'opacity': 1,
                 'isBaseLayer': false,singleTile:true,
                  tileOptions: {maxGetUrlLength: 2048}
        });


 Two layers is the same on server, one using sld_body and another not.
 layer2 without sld_body run´s fine, refresh is OK and old images not
 occurs, layer1 using sld_body with singleTile:false also runs fine.
 Using layer1 with singleTile:true problem with old images appear, when pan
 or zoom map layer1 using sld_body is generated correct but previous images
 is not destroyed creating effect of overlay.

 Attached a image of this two layers, the small elements is from the first
 layer using sld_body and have the old images problem, the greater images
 is from first layer too, in SLD sended to server maxScaleDenominator
 define the size of image, the greater images is correct but small elements
 is old from previous zoom. If disable the first layer only the greater
 images is diplayed using SLD from server in second layer. SLD is the same
 in this case only one send by OpenLayers in layer1 and another in the
 server used by layer2.

 One tip of Andreas is "use of a transitionEffect by default now, which
 does not work for IFrame tiles"

 The problem is the same using actual openlayers version with
 OpenLayers.Layer.WMS.Post

-- 
Ticket URL: <http://trac.openlayers.org/ticket/3267>
OpenLayers <http://openlayers.org/>
A free AJAX map viewer


More information about the Trac mailing list