[OpenLayers-Users] Overriding url for Vector layer

Adrian Popa adrian_gh.popa at romtelecom.ro
Tue Jul 7 08:55:09 EDT 2009

Hi again,

I'm trying to display a vector layer (feed data as KML) and I'm trying 
to dynamically set some variables that are sent server-side for processing.
The layer definition is the following:

locations = new OpenLayers.Layer.Vector("Alarm Locations", {
                        projection: map.displayProjection, 
minResolution: 1, maxResolution: 38,
                        strategies: [new OpenLayers.Strategy.BBOX()],
                        protocol: new OpenLayers.Protocol.HTTP({ *url: 
"kml_locations.pl"*, format: new OpenLayers.Format.KML({ extractStyles: 
true, extractAttributes: true })})});

On some event (button pressed) I use a javascript function to replace 
the "url" value from the layer definition with a url similar to: 
"kml_locations.pl?key1=value1&key2=value2". After this I call 
*layer.refresh({force: true});

*From analysing the traffic to the web server I can see that the layer 
refresh is called on the old url value (kml_locations.pl) even if the 
attribute locations.protocol.url is set to the value I imposed.

My question is: when the layer is refreshed - which URL is used (is 
there a cached value)? Can this be overwritten? Or do I need to create a 
new Protocol object?


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/openlayers-users/attachments/20090707/173ac0e9/attachment.html

More information about the Users mailing list