diff --git a/CHANGELOG.md b/CHANGELOG.md index 96ed4c849..ea5be0c8a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ FROST-Server version 2.5 and higher requires Java 21. This is because some libra * Apply fine-grained authorisation to MQTT-Create. * Fixed the resolving of references in the URL of json batch requests. * Fixed differences in HTTP response code between GET and HEAD requests. +* Fixed json batch requests without atomicity group all running in the same group. ## Release version 2.4.0 diff --git a/Plugins/BatchProcessing/src/main/java/de/fraunhofer/iosb/ilt/frostserver/plugin/batchprocessing/json/JsonBatchProcessor.java b/Plugins/BatchProcessing/src/main/java/de/fraunhofer/iosb/ilt/frostserver/plugin/batchprocessing/json/JsonBatchProcessor.java index 3fc39d09e..4d71a3153 100644 --- a/Plugins/BatchProcessing/src/main/java/de/fraunhofer/iosb/ilt/frostserver/plugin/batchprocessing/json/JsonBatchProcessor.java +++ b/Plugins/BatchProcessing/src/main/java/de/fraunhofer/iosb/ilt/frostserver/plugin/batchprocessing/json/JsonBatchProcessor.java @@ -149,7 +149,7 @@ public void processNextRequest() { if (parser.nextToken() == JsonToken.START_OBJECT) { JsonBatchRequestItem item = parser.readValueAs(JsonBatchRequestItem.class); final String itemGroup = item.getAtomicityGroup(); - if (!StringUtils.equals(currentGroup, itemGroup)) { + if (itemGroup == null || !StringUtils.equals(currentGroup, itemGroup)) { service.commitTransaction(); service.startTransaction(request.getUserPrincipal()); currentGroup = itemGroup;