[OpenLayers-Dev] Problems with WMS.Post + singleTile + sld_body

Carlos Lacerda carlos.lacerda at gmail.com
Wed Apr 20 09:42:25 EDT 2011

Hi Andreas,

Thanks for your reply.

I repeat my test using openlayers of trunk, the parameter tileOptions:
{maxGetUrlLength: 2048} run´s perfect but the problem of old images
using singleTile:true persist :-(

All runs fine the only problem is the singleTile:true, with
singleTile:false layer refresh Ok when change parameter to true old
images persist on the map.
Has a parameter or one point to try solve this problem ??

I see now that this problem only occurs when i use sld_body parameter,
in example:

trafo = new OpenLayers.Layer.WMS("Transformadores", wmsServer,{
            layers: 'axx:TRAFO_PERDAS',
            styles: '',
	    format: 'image/png',
	    transparent: true,
        }, {
             'opacity': 1,
             'isBaseLayer': false,singleTile:true,
             tileOptions: {maxGetUrlLength: 2048}
trafo2 = new OpenLayers.Layer.WMS("Transformadores2", wmsServer,{
		layers: 'axx:TRAFO_PERDAS',
		styles: '',
		format: 'image/png',
		transparent: true
	}, {
	      	 'opacity': 1,
	         'isBaseLayer': false,singleTile:true,
	          tileOptions: {maxGetUrlLength: 2048}

Is the same layer, one using sld_body and another not. The second
layer without sld_body run´s fine, refresh is OK and old images not
occurs, the first layer using sld_body with singleTile:false runs fine
but in my case i have the know problem of "TextSymbolizer label near
tile edges" and its necessary use singleTile:true, with singlTile:true
problem with old images appear.

I attach a image of this two layers, the small elements is the first
layer using sld_body with the old images problem, the greater images
is from first layer too, in
SLD maxScaleDenominator define the size of image, the greater images
is correct but small elements is old from previous zoom. If i 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 and another in the server.

In my case its necessary dynamic SLDs and OpenLayers its like a glove
to this, singleTile is the only problem for me now :-(

All sugestions are appreciated.

Thanks a lot.

On Wed, Apr 20, 2011 at 4:50 AM, Andreas Hocevar <ahocevar at opengeo.org> wrote:
> Note that the tileOptions: {maxGetUrlLength: 2048} configuration option was added *after* the last release. So can you please try out the latest trunk version of OpenLayers and see what results you get with that?
> Andreas.
> On Apr 19, 2011, at 15:22 , Carlos Lacerda wrote:
>> Hi All,
>> I´m user OpenLayers with Geoserver in my projects to render eletrical networks.
>> It´s fine for my purposes, but now a found a problem to use singleTile
>> with dynamical SLD´s
>> Explaining....
>> Initially  use WMS.Post to create a layer and send a dynamic SLD using
>> sld_body parameter
>> var trafo = new OpenLayers.Layer.WMS.Post("Transformadores", wmsServer,{
>>             layers: 'axx:TRAFO_PERDAS',
>>             cql_filter:"mes_ref='201102'";
>>             styles: '',
>>     srs: 'EPSG:4326',
>>     format: 'image/png',
>>     transparent: true,
>>     sld_body: sldTrafo.getSLD(),//JS with SLD, its a large SLD
>>         }, {
>>             'opacity': 1,
>>             'isBaseLayer': false,
>>             'wrapDateLine': false,
>>             buffer: 0,
>>            //singleTile:true
>>         });
>> This layer works fine but have the know problem of  TextSymbolizer
>> label near tile edges.
>> All right, i add parameter 'singleTile:true' to solve the problem and
>> the same solve the problem but have a issue, when zoom or pan the map
>> the old image is not distroyed, when pan or zoom new image is created
>> correct but old image before created not disapears creating impression
>> of a overlay in map, an example if a have an area with five elements
>> when zoom this area the five elements is duplicated to ten elements,
>> if my SLD chage simbols depending of a scale for example the old
>> images are displayed like a overlay.
>> It´s necessary some parameter to solve this problem ?
>> I´m using IE8.
>> Reading documentation about WMS.POST deprecated, i try use Layer.WMS
>> using tileOptions: {maxGetUrlLength: 2048}  without success, using
>> this method only small SLDs runs.
>> How should i use this parameter ??
>> When use large SLD with this parameter the folowing error is throw by IE:
>> Message: Invalid Pointer
>> Line 156
>> Character: 49
>> Code: 0
>> URI: http://openlayers.org/api/OpenLayers.js
>> Thanks a lot for any help.
>> --
>> Sds,
>> Carlos Lacerda
>> System Architect - CIAS
>> Brasil
>> _______________________________________________
>> Dev mailing list
>> Dev at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/openlayers-dev
> --
> Andreas Hocevar
> OpenGeo - http://opengeo.org/
> Expert service straight from the developers.

Carlos Lacerda
System Architect - CIAS
-------------- next part --------------
A non-text attachment was scrubbed...
Name: small.png
Type: image/png
Size: 15869 bytes
Desc: not available
Url : http://lists.osgeo.org/pipermail/openlayers-dev/attachments/20110420/5bec1054/small-0001.png

More information about the Dev mailing list