From ce94b6adf0d680903305df2533bfd739541f0f5c Mon Sep 17 00:00:00 2001 From: rongtongjin <794220751@qq.com> Date: Tue, 24 Dec 2019 15:36:35 +0800 Subject: [PATCH] enhancement(extRocketMQTemplate):Remove the limitation that ExtRocketMQTemplate can not keep the same nameserver as RocketMQTemplate --- .../ExtRocketMQTemplateConfiguration.java | 5 ++--- .../ExtProducerResetConfiguration.java | 7 ------- .../RocketMQAutoConfigurationTest.java | 14 -------------- 3 files changed, 2 insertions(+), 24 deletions(-) diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java index c268b571..05eaa466 100644 --- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java +++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/annotation/ExtRocketMQTemplateConfiguration.java @@ -17,13 +17,12 @@ package org.apache.rocketmq.spring.annotation; -import org.springframework.stereotype.Component; - import java.lang.annotation.Documented; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; +import org.springframework.stereotype.Component; @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @@ -38,7 +37,7 @@ /** * The property of "name-server". */ - String nameServer(); + String nameServer() default "${rocketmq.name-server:}"; /** * Name of producer. diff --git a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java index 1c019bbf..daab3c35 100644 --- a/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java +++ b/rocketmq-spring-boot/src/main/java/org/apache/rocketmq/spring/autoconfigure/ExtProducerResetConfiguration.java @@ -162,12 +162,5 @@ private void validate(ExtRocketMQTemplateConfiguration annotation, "please check the @ExtRocketMQTemplateConfiguration", annotation.value())); } - - if (rocketMQProperties.getNameServer() == null || - rocketMQProperties.getNameServer().equals(environment.resolvePlaceholders(annotation.nameServer()))) { - throw new BeanDefinitionValidationException( - "Bad annotation definition in @ExtRocketMQTemplateConfiguration, nameServer property is same with " + - "global property, please use the default RocketMQTemplate!"); - } } } \ No newline at end of file diff --git a/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfigurationTest.java b/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfigurationTest.java index 553183d1..5c0ccca7 100644 --- a/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfigurationTest.java +++ b/rocketmq-spring-boot/src/test/java/org/apache/rocketmq/spring/autoconfigure/RocketMQAutoConfigurationTest.java @@ -32,11 +32,8 @@ import org.junit.Assert; import org.junit.Test; import org.springframework.beans.factory.NoSuchBeanDefinitionException; -import org.springframework.beans.factory.support.BeanDefinitionValidationException; import org.springframework.boot.autoconfigure.AutoConfigurations; -import org.springframework.boot.test.context.assertj.AssertableApplicationContext; import org.springframework.boot.test.context.runner.ApplicationContextRunner; -import org.springframework.boot.test.context.runner.ContextConsumer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.messaging.Message; @@ -88,17 +85,6 @@ public void testDefaultMQProducer() { @Test public void testExtRocketMQTemplate() { - runner.withPropertyValues("rocketmq.name-server=127.0.0.1:9876"). - withUserConfiguration(TestExtRocketMQTemplateConfig.class, CustomObjectMappersConfig.class). - run(new ContextConsumer() { - @Override - public void accept(AssertableApplicationContext context) throws Throwable { - Throwable th = context.getStartupFailure(); - System.out.printf("th==" + th + "\n"); - Assert.assertTrue(th instanceof BeanDefinitionValidationException); - } - }); - runner.withPropertyValues("rocketmq.name-server=127.0.1.1:9876"). withUserConfiguration(TestExtRocketMQTemplateConfig.class, CustomObjectMappersConfig.class). run((context) -> {