Why don't set Geometry column in OpenLayers wfs-t request to geoserver?

المشرف العام

Administrator
طاقم الإدارة
I want to edit a vector layer(its a point layer) using OpenLayers 3.6 and then save it with wfs protocol. My server is geoserver. I define my layer as follow:

var u="http://localhost:8080/geoserver/wfs?&service=wfs&version=1.1.0&request=GetFeature&typeNames=opengeo:point";format = new ol.format.WFS({});wfs = new ol.layer.Vector({ title: 'Point', source: new ol.source.Vector({ url: 'proxy.cgi?url=' + encodeURIComponent(u), format: format })});I get all features correctly. Now I add a point to layer as follow:

point = new ol.geom.Point([39.8274942, 21.4226638]);feature = new ol.Feature({ geometry: point});feature.set('NAME', 'Ya Ali Madad');source.addFeature(feature);Now saving feature is as bellow:

node = format.writeTransaction([feature],null,null,{ featureNS: 'http://opengeo.org', featureType: 'opengeo:point', srsName: 'EPSG:4326'});s = new XMLSerializer();var url = "http://localhost:8080/geoserver/wfs";Ext.Ajax.request({ url: 'proxy.cgi?url='+ encodeURIComponent(url), method: 'POST', xmlData: s.serializeToString(node), headers: { 'Content-Type': 'text/xml' }, success: function(response){ console.log("All thing is right."); }});I use Extjs-6 for creating ajax request. it create a request as follow:

Request Payload:

39.8274942 21.4226638 Ya Ali Madad Request in Network:

And geoserver response this request as follow:

1 0 0 Geoserver add this point in database, but don't set geometry field. it only set properties column and Not geometry column.

Where is the problem? How can I do to fix it?



أكثر...
 
أعلى