diff --git a/spring-integration-core/src/main/java/org/springframework/integration/aggregator/AbstractAggregatingMessageGroupProcessor.java b/spring-integration-core/src/main/java/org/springframework/integration/aggregator/AbstractAggregatingMessageGroupProcessor.java index f863df4e33..9fb4e7675e 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/aggregator/AbstractAggregatingMessageGroupProcessor.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/aggregator/AbstractAggregatingMessageGroupProcessor.java @@ -74,8 +74,11 @@ public abstract class AbstractAggregatingMessageGroupProcessor implements Messag if (!aggregatedHeaders.containsKey(key)) { aggregatedHeaders.put(key, value); } - else if (!value.equals(aggregatedHeaders.get(key))) { - conflictKeys.add(key); + else { + Object existingValue = aggregatedHeaders.get(key); + if (value != existingValue && (value == null || !value.equals(existingValue))) { + conflictKeys.add(key); + } } } }