I made progress and now I'm able to copy between, but there is some strange behavior. See below ...
Fabian Patzke wrote: > > I try to build a copy function so that a user can select some features > from a > WFS and copy them to another. > > My WFS are not normal WFS Layers they are build in Vector Layers > > wfsLayer [layerArray[j].name] = new OpenLayers.Layer.Vector ( > ... > { > strategies: [ > new OpenLayers.Strategy.Fixed({preload:false}), > new OpenLayers.Strategy.Save({ > ... > ], > projection: new OpenLayers.Projection("EPSG:31467"), > protocol: new OpenLayers.Protocol.WFS({...}) > }, > ... > ); > [...] > That is all I have so far: > > function copySelectedFeatures (wfsLayer){ > features = select.features; > for (i=0;i<features.length;i++){ > var feature = features[i]; > layer.addFeatures([feature]); > layer.strategies[1].save(feature); > } > } > i changed the copy action: function copySelectedFeatures (layer){ features = select.features; layerFeatures = layer.features; var layerFeaturesLengthBegin = layerFeatures.length; for (i=0;i<features.length;i++){ var geometry; //check whether its multi or normal geom and copy the inner one if (features[i].geometry.components != null){ geometry = features[i].geometry.components[0].clone(); } else { geometry = features[i].geometry.clone(); } var feature = new OpenLayers.Feature.Vector(geometry); layer.addFeatures([feature]); //this is a specific draw control for this layer controls["draw_"+layer.name].featureAdded(feature); } } this works well and i can copy all my geometries to another vector(wfs)layer. The problem was that if my destination layer was one that had a multigeom i tried to add a multigeom to it. For me that sounded to be the right approach, but when I did so, the transaction only hat an empty geometry. Then i tried to copy a non multigeom to the corresponding multigeom destination layer and it worked my transaction was complete with a full geometry and I got the added feature in my destination layer. For me this sounds a bit weird that I am not able to copy i.e. a multipolygon to a multipolygon layer. Maybe my approach is in some way wrong, but maybe it's a bug? Greetings, Fabian -- View this message in context: http://n2.nabble.com/Adding-Feature-to-WFS-in-Vector-Layer---Copying-Features-tp3416461p3435981.html Sent from the OpenLayers Dev mailing list archive at Nabble.com. _______________________________________________ Dev mailing list Dev@openlayers.org http://openlayers.org/mailman/listinfo/dev