diff --git a/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java b/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java index 345990bbc7..af179116c9 100644 --- a/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java +++ b/spring-integration-core/src/main/java/org/springframework/integration/gateway/MessagingGatewaySupport.java @@ -423,6 +423,7 @@ public abstract class MessagingGatewaySupport extends AbstractEndpoint if (!this.replyTimeoutSet) { this.messagingTemplate.setReceiveTimeout(endpointsDefaultTimeout); } + super.onInit(); this.initialized = true; } diff --git a/spring-integration-kafka/src/main/resources/org/springframework/integration/kafka/config/spring-integration-kafka.xsd b/spring-integration-kafka/src/main/resources/org/springframework/integration/kafka/config/spring-integration-kafka.xsd index 0a1548b3ca..77b9a6bc17 100644 --- a/spring-integration-kafka/src/main/resources/org/springframework/integration/kafka/config/spring-integration-kafka.xsd +++ b/spring-integration-kafka/src/main/resources/org/springframework/integration/kafka/config/spring-integration-kafka.xsd @@ -453,6 +453,13 @@ + + + + Set the 'group.id' KafkaConsumer property. + + + @@ -764,13 +771,6 @@ - - - - Set the 'group.id' KafkaConsumer property. - - - diff --git a/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests-context.xml b/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests-context.xml index 91e330442f..08a10bf84b 100644 --- a/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests-context.xml +++ b/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests-context.xml @@ -21,7 +21,8 @@ retry-template="retryTemplate" recovery-callback="recoveryCallback" bind-source-record="true" - on-partitions-assigned-seek-callback="onPartitionsAssignedSeekCallback"/> + on-partitions-assigned-seek-callback="onPartitionsAssignedSeekCallback" + role="testRole"/> diff --git a/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests.java b/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests.java index da03ee622a..b95d99e0ec 100644 --- a/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests.java +++ b/spring-integration-kafka/src/test/java/org/springframework/integration/kafka/config/xml/KafkaInboundGatewayTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2019-2023 the original author or authors. + * Copyright 2019-2024 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,6 +21,7 @@ import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframework.integration.kafka.inbound.KafkaInboundGateway; +import org.springframework.integration.support.SmartLifecycleRoleController; import org.springframework.integration.test.util.TestUtils; import org.springframework.kafka.listener.KafkaMessageListenerContainer; import org.springframework.test.annotation.DirtiesContext; @@ -45,6 +46,9 @@ public class KafkaInboundGatewayTests { @Autowired private ApplicationContext context; + @Autowired + SmartLifecycleRoleController roleController; + @Test public void testProps() { assertThat(this.gateway1.isAutoStartup()).isFalse(); @@ -69,6 +73,8 @@ public class KafkaInboundGatewayTests { assertThat(TestUtils.getPropertyValue(this.gateway1, "messagingTemplate.sendTimeout")).isEqualTo(5000L); assertThat(TestUtils.getPropertyValue(this.gateway1, "messagingTemplate.receiveTimeout")).isEqualTo(43L); assertThat(TestUtils.getPropertyValue(this.gateway1, "bindSourceRecord", Boolean.class)).isTrue(); + assertThat(this.roleController.getRoles()).contains("testRole"); + assertThat(this.roleController.getEndpointsRunningStatus("testRole")).containsEntry("gateway1", false); } }