ПРоблемы с отображением WFS.
Добавлено: 27 сен 2012, 17:48
Добрый день.
Есть два ВФС слоя.
Как вы видете я обьявляю два слоя, но приравниваю один из слоев другой переменной (по сути это слой который добавляется к карте). После я по нажатию кнопки приравниваю этой же переменой другой слой и делаю его видимым. Но видимым он не делается. Он ведет себя странно. Такое чувство, что он как будто я работаю все еще с первым слоем. Потому что когда я модифицирую атрибуты фичи этого слоя файр баг выдает, что ниодна фича не была изменина. С другой стороны, если посмотреть в параметры этого слоя в фаирбаге то видно, что это уже второй слой.
Если же я просто уберу определение слоя "tabLayer" а оставлю лишь "xmlLayer" то все работает прекрасно. Что может быть не так? Или ОЛ в принципе против такого переопределения слоя?
Есть два ВФС слоя.
Код: Выделить всё
//WFS
SS=new OpenLayers.Strategy.Save();
FS=new OpenLayers.Strategy.Filter({filter:Ffilter});
var myStyle = OpenLayers.Util.extend({},
OpenLayers.Feature.Vector.style['default']);
myStyle.strokeWidth = 1.5;
myStyle.strokeColor = "#ff0000";
myStyle.fillOpacity = 0.1;
OpenLayers.ProxyHost = "proxy.cgi?url=";
var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
renderer = (renderer) ? [renderer] : OpenLayers.Layer.Vector.prototype.renderers;
xmlLayer= new OpenLayers.Layer.Vector("Редактируемый участок_XML", {
strategies: [new OpenLayers.Strategy.BBOX(),SS,FS ],
style: myStyle,
protocol: new OpenLayers.Protocol.WFS({
version: "1.1.0",
srsName:"EPSG:4326",
url: "http://localhost:8080/geoserver/wfs",
featureType: "xml_geom",
featureNS: "http://www.opengeospatial.net/cite",
//filter : Ffilter
}),
projection:"EPSG:4326",
renderers: renderer
})
tabLayer= new OpenLayers.Layer.Vector("Редактируемый участок", {
strategies: [new OpenLayers.Strategy.BBOX(),SS,FS ],
style: myStyle,
protocol: new OpenLayers.Protocol.WFS({
version: "1.1.0",
srsName:"EPSG:4326",
url: "http://localhost:8080/geoserver/wfs",
featureType: "filedata",
featureNS: "http://www.opengeospatial.net/cite",
//filter : Ffilter
}),
projection:"EPSG:4326",
renderers: renderer
})
myVecLayer=xmlLayer;
app.mapPanel.map.addLayers([myVecLayer]);
myVecLayer.visibility=false;
Если же я просто уберу определение слоя "tabLayer" а оставлю лишь "xmlLayer" то все работает прекрасно. Что может быть не так? Или ОЛ в принципе против такого переопределения слоя?