@@ -275,24 +275,32 @@ function isDanteConcept(fieldValue) {
275275}
276276
277277async function performEditTransaction ( geometryIds , changeMap , fieldConfiguration , authorizationString ) {
278- await performTransaction (
278+ const result = await performTransaction (
279279 geometryIds ,
280- getEditRequestXml ( geometryIds , changeMap , fieldConfiguration . edit_wfs_feature_type . ValueText ) ,
280+ getEditRequestXml ( changeMap , fieldConfiguration . edit_wfs_feature_type . ValueText ) ,
281281 fieldConfiguration . edit_wfs_url . ValueText ,
282282 authorizationString
283283 ) ;
284+
285+ if ( ! new RegExp ( '<wfs:totalUpdated>' + geometryIds . length + '<\/wfs:totalUpdated>' ) . test ( result ) ) {
286+ throwErrorToFrontend ( 'Bei der Aktualisierung von Geometrie-Datensätzen ist ein Fehler aufgetreten.' , result ) ;
287+ }
284288}
285289
286290async function performDeleteTransaction ( geometryIds , fieldConfiguration , authorizationString ) {
287- await performTransaction (
291+ const result = await performTransaction (
288292 geometryIds ,
289- getDeleteRequestXml ( geometryIds , fieldConfiguration . edit_wfs_feature_type . ValueText ) ,
293+ getDeleteRequestXml ( fieldConfiguration . edit_wfs_feature_type . ValueText ) ,
290294 fieldConfiguration . edit_wfs_url . ValueText ,
291295 authorizationString
292296 ) ;
297+
298+ if ( ! new RegExp ( '<wfs:totalDeleted>' + geometryIds . length + '<\/wfs:totalDeleted>' ) . test ( result ) ) {
299+ throwErrorToFrontend ( 'Beim Löschen von Geometrie-Datensätzen ist ein Fehler aufgetreten.' , result ) ;
300+ }
293301}
294302
295- async function performTransaction ( geometryIds , requestXml , wfsUrl , authorizationString ) {
303+ async function performTransaction ( requestXml , wfsUrl , authorizationString ) {
296304 const transactionUrl = wfsUrl + '?service=WFS&version=1.1.0&request=Transaction' ;
297305
298306 try {
@@ -304,12 +312,9 @@ async function performTransaction(geometryIds, requestXml, wfsUrl, authorization
304312 } ,
305313 body : requestXml
306314 } ) ;
307- const xmlResult = await response . text ( ) ;
308- if ( ! new RegExp ( '<wfs:totalUpdated>' + geometryIds . length + '<\/wfs:totalUpdated>' ) . test ( xmlResult ) ) {
309- throwErrorToFrontend ( 'Bei der Aktualisierung von Geometrie-Datensätzen ist ein Fehler aufgetreten.' , xmlResult ) ;
310- }
315+ return await response . text ( ) ;
311316 } catch ( err ) {
312- throwErrorToFrontend ( 'Bei der Aktualisierung von Geometrie-Datensätzen ist ein Fehler aufgetreten.' , err ) ;
317+ throwErrorToFrontend ( 'Beim Zugriff auf den WFS-T ist ein Fehler aufgetreten.' , JSON . stringify ( err ) ) ;
313318 }
314319}
315320
0 commit comments