Yes, I have tried this. It is an update request though. It gives me the
same result.
-Vikram
On 22/01/2020 18:35, Rahkonen Jukka (MML) wrote:
Have you already made a test without OpenLayers by writing a WFS-T
insert request by hand and posting it with curl, or Postman, or with
the demo request application that comes with Geoserver?
-Jukka Rahkonen-
*Lähettäjä:* Vitor Fonseca <[email protected]>
*Lähetetty:* keskiviikko 22. tammikuuta 2020 12.59
*Vastaanottaja:* Vikram <[email protected]>
*Kopio:* geoserver-users <[email protected]>
*Aihe:* Re: [Geoserver-users] OpenLayers GeoServer update an array of
features using WFS-T
Hi,
I think this is a programming problem rather than a Geoserver problem.
From my experience the issue should be with the *clone* functionality.
Check this
https://gis.stackexchange.com/questions/46730/openlayers-cloned-features-get-style-from-original-feature
Someone mentions "I have noticed that cloned features share the same
featureID as the original. " and this should be the problem when
sending the features over to WFS-T...
You could try creating new features some other way (wkt...)
Vikram <[email protected]
<mailto:[email protected]>> escreveu no dia quarta,
22/01/2020 à(s) 10:24:
HI all,
I am trying to update features using WFS-T update. I am sending
the request from my website (OpenLayers) by passing an array of
features.
However, I have noticed that the attributes and geometry of last
feature in the array is copied to all other features.
For example, if I pass 5 features to the |writeTransaction| method
to update an attribute of all 5 features, it copies the attributes
and geometry of the 5th feature to the other features.
|var||clones = []|
|selectedFeatures.forEach(||function||(feature) {|
|||var||featureProperties = feature.getProperties();|
||
|||delete||featureProperties.boundedBy;|
|||var||clone = feature.clone();|
| clone.setId(feature.getId());|
||
| clone.setGeometryName(||'the_geom'||);|
||
| clone.setProperties({||'xyz'||:||'xyz'||})|
||
| clones.push(clone)|
||
||
||
|})|
|console.log(clones)|
|transactWFS(||'update_batch'||, clones);|
int the transactWFS method,
|transactWFS = ||function||(mode, f) {|
||
|||var||node;|
|||switch||(mode) {|
|||case||||'insert'||:|
| node = formatWFS.writeTransaction([f], ||null||, ||null||,
formatGML);|
|||break||;|
|||case||||'update'||:|
| node = formatWFS.writeTransaction(||null||, [f], ||null||,
formatGML);|
|||break||;|
|||case||||'update_batch'||:|
| node = formatWFS.writeTransaction(||null||, f, ||null||,
formatGML);|
|||break||;|
|||case||||'delete'||:|
| node = formatWFS.writeTransaction(||null||, ||null||, [f],
formatGML);|
|||break||;|
| }|
|||var||payload = xs.serializeToString(node);|
||
| $.ajax(||'http://localhost:8080/geoserver/TEST/ows'||, {|
| service: ||'WFS'||,|
| type: ||'POST'||,|
| dataType: ||'xml'||,|
| processData: ||false||,|
| contentType: ||'text/xml'||,|
| data: payload,|
| success: ||function||(data) {|
||
| },|
| error: ||function||(e) {|
|||var||errorMsg = e? (e.status + ||' '||+ e.statusText) : ||""||;|
| alert(||'Error saving this feature to GeoServer.<br><br>'|||
| + errorMsg);|
| }|
| }).||done||(||function||() {|
| wfsSource.refresh()|
||
| });|
|};|
Does anyone have a solution?
Regards,
Vikram
_______________________________________________
Geoserver-users mailing list
Please make sure you read the following two resources before
posting to this list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
<http://www.ianturton.com/talks/foss4g.html#/>
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html
<http://geoserver.org/comm/userlist-guidelines.html>
If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer
[email protected]
<mailto:[email protected]>
https://lists.sourceforge.net/lists/listinfo/geoserver-users
--
Lähettäjä poisti kuvan.
www.vfonsecaz.pt <http://www.vfonsecaz.pt>
_______________________________________________
Geoserver-users mailing list
Please make sure you read the following two resources before posting to this
list:
- Earning your support instead of buying it, but Ian Turton:
http://www.ianturton.com/talks/foss4g.html#/
- The GeoServer user list posting guidelines:
http://geoserver.org/comm/userlist-guidelines.html
If you want to request a feature or an improvement, also see this:
https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users