diff --git a/lib/OpenLayers/Feature/WFS.js b/lib/OpenLayers/Feature/WFS.js index a02dfe60e1..b2eb0f5224 100644 --- a/lib/OpenLayers/Feature/WFS.js +++ b/lib/OpenLayers/Feature/WFS.js @@ -43,8 +43,15 @@ OpenLayers.Feature.WFS.prototype = */ processXMLNode: function(xmlNode) { //this should be overridden by subclasses - // must return an Object with 'id' and 'lonlat' values set + var point = xmlNode.getElementsByTagName("Point"); + var text = point[0].textContent; + var floats = text.split(","); + + return {lonlat: new OpenLayers.LonLat(parseFloat(floats[0]), + parseFloat(floats[1])), + id: null}; + }, /** @final @type String */ diff --git a/lib/OpenLayers/Layer/WFS.js b/lib/OpenLayers/Layer/WFS.js index 4b060c10b3..6885b30248 100644 --- a/lib/OpenLayers/Layer/WFS.js +++ b/lib/OpenLayers/Layer/WFS.js @@ -12,7 +12,7 @@ OpenLayers.Layer.WFS.prototype = Object.extend(new OpenLayers.Layer.Markers(), { /** @type Object */ - featureClass: null, + featureClass: OpenLayers.Feature.WFS, /** @final @type hash */ DEFAULT_PARAMS: { service: "WFS", @@ -30,7 +30,7 @@ OpenLayers.Layer.WFS.prototype = * @param {Object} featureClass */ initialize: function(name, url, params, featureClass) { - this.featureClass = featureClass; + if (featureClass != null) this.featureClass = featureClass; var newArguments = new Array(); if (arguments.length > 0) { diff --git a/lib/OpenLayers/Tile/WFS.js b/lib/OpenLayers/Tile/WFS.js index aede4a6dd0..486d1384cd 100644 --- a/lib/OpenLayers/Tile/WFS.js +++ b/lib/OpenLayers/Tile/WFS.js @@ -79,7 +79,7 @@ OpenLayers.Tile.WFS.prototype = doc = OpenLayers.parseXMLString(request.responseText); } - var resultFeatures = OpenLayers.Util.getNodes(doc, "gml:featureMember"); + var resultFeatures = doc.getElementsByTagName("featureMember"); //clear old featureList this.features = new Array();