diff --git a/spring-integration-kafka/src/main/java/org/springframework/integration/kafka/dsl/KafkaProducerMessageHandlerSpec.java b/spring-integration-kafka/src/main/java/org/springframework/integration/kafka/dsl/KafkaProducerMessageHandlerSpec.java index 4fa159efb8..1d1d4cbb8f 100644 --- a/spring-integration-kafka/src/main/java/org/springframework/integration/kafka/dsl/KafkaProducerMessageHandlerSpec.java +++ b/spring-integration-kafka/src/main/java/org/springframework/integration/kafka/dsl/KafkaProducerMessageHandlerSpec.java @@ -31,6 +31,8 @@ import org.springframework.integration.expression.ValueExpression; import org.springframework.integration.kafka.outbound.KafkaProducerMessageHandler; import org.springframework.kafka.core.KafkaTemplate; import org.springframework.kafka.core.ProducerFactory; +import org.springframework.kafka.support.DefaultKafkaHeaderMapper; +import org.springframework.kafka.support.KafkaHeaderMapper; import org.springframework.kafka.support.LoggingProducerListener; import org.springframework.kafka.support.ProducerListener; import org.springframework.kafka.support.converter.RecordMessageConverter; @@ -257,6 +259,24 @@ public class KafkaProducerMessageHandlerSpec(0)); this.kafkaProducer2.setPartitionIdExpression(new ValueExpression<>(0)); - this.sendToKafkaFlowInput.send(new GenericMessage<>("foo")); + this.sendToKafkaFlowInput.send(new GenericMessage<>("foo", Collections.singletonMap("foo", "bar"))); for (int i = 0; i < 100; i++) { Message receive = this.listeningFromKafkaResults1.receive(20000); @@ -139,6 +140,7 @@ public class KafkaDslTests { assertThat(headers.get(KafkaHeaders.OFFSET)).isEqualTo((long) i); assertThat(headers.get(KafkaHeaders.TIMESTAMP_TYPE)).isEqualTo("CREATE_TIME"); assertThat(headers.get(KafkaHeaders.RECEIVED_TIMESTAMP)).isEqualTo(1487694048633L); + assertThat(headers.get("foo")).isEqualTo("bar"); } for (int i = 0; i < 100; i++) { @@ -257,6 +259,7 @@ public class KafkaDslTests { .messageKey(m -> m .getHeaders() .get(IntegrationMessageHeaderAccessor.SEQUENCE_NUMBER)) + .headerMapper() .partitionId(m -> 10) .topicExpression("headers[kafka_topic] ?: '" + topic + "'") .configureKafkaTemplate(t -> t.id("kafkaTemplate:" + topic));