This is an automated email from the ASF dual-hosted git repository.

liujun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo.git


The following commit(s) were added to refs/heads/master by this push:
     new 9559c4e  Unify the bean name convention of ServiceBean and 
ReferenceBean (#4135)
9559c4e is described below

commit 9559c4ef8a629f73c8bed620006c9d5a3b924cbc
Author: Mercy Ma <[email protected]>
AuthorDate: Mon May 27 10:31:43 2019 +0800

    Unify the bean name convention of ServiceBean and ReferenceBean (#4135)
    
    fixes #4071, #3709
---
 .../annotation/AnnotationBeanNameBuilder.java      | 142 ---------------------
 .../ReferenceAnnotationBeanPostProcessor.java      |  10 +-
 .../ServiceAnnotationBeanPostProcessor.java        |  14 +-
 .../factory/annotation/ServiceBeanNameBuilder.java | 112 ++++++++++++++++
 ...erTest.java => ServiceBeanNameBuilderTest.java} |  29 ++---
 dubbo-registry/dubbo-registry-nacos/pom.xml        |  43 -------
 .../consumer/DemoServiceConsumerBootstrap.java     |   4 -
 .../org/apache/dubbo/demo/service/DemoService.java |   8 +-
 .../src/test/resources/provider-config.properties  |   3 -
 9 files changed, 135 insertions(+), 230 deletions(-)

diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java
deleted file mode 100644
index 6e18e2a..0000000
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilder.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.dubbo.config.spring.beans.factory.annotation;
-
-import org.apache.dubbo.common.constants.CommonConstants;
-import org.apache.dubbo.config.annotation.Reference;
-import org.apache.dubbo.config.annotation.Service;
-import org.apache.dubbo.registry.Registry;
-
-import org.springframework.core.env.Environment;
-
-import static 
org.apache.dubbo.common.constants.CommonConstants.DEFAULT_PROTOCOL;
-import static 
org.apache.dubbo.common.constants.RegistryConstants.CONSUMERS_CATEGORY;
-import static 
org.apache.dubbo.common.constants.RegistryConstants.PROVIDERS_CATEGORY;
-import static 
org.apache.dubbo.config.spring.util.AnnotationUtils.resolveInterfaceName;
-import static org.springframework.util.StringUtils.arrayToCommaDelimitedString;
-import static org.springframework.util.StringUtils.hasText;
-
-/**
- * The Bean Name Builder for the annotations {@link Service} and {@link 
Reference}
- * <p>
- * The naming rule is consistent with the the implementation {@link Registry} 
that is based on the service-name aware
- * infrastructure, e.g Spring Cloud, Cloud Native and so on.
- * <p>
- * The pattern of bean name : 
${category}:${protocol}:${serviceInterface}:${version}:${group}.
- * <p>
- * ${version} and ${group} are optional.
- *
- * @since 2.6.6
- */
-class AnnotationBeanNameBuilder {
-
-    private static final String SEPARATOR = ":";
-
-    // Required properties
-
-    private final String category;
-
-    private final String protocol;
-
-    private final String interfaceClassName;
-
-    // Optional properties
-
-    private String version;
-
-    private String group;
-
-    private Environment environment;
-
-    private AnnotationBeanNameBuilder(String category, String protocol, String 
interfaceClassName) {
-        this.category = category;
-        this.protocol = protocol;
-        this.interfaceClassName = interfaceClassName;
-    }
-
-    private AnnotationBeanNameBuilder(Service service, Class<?> 
interfaceClass) {
-        this(PROVIDERS_CATEGORY, resolveProtocol(service.protocol()), 
resolveInterfaceName(service, interfaceClass));
-        this.group(service.group());
-        this.version(service.version());
-    }
-
-    private AnnotationBeanNameBuilder(Reference reference, Class<?> 
interfaceClass) {
-        this(CONSUMERS_CATEGORY, resolveProtocol(reference.protocol()), 
resolveInterfaceName(reference, interfaceClass));
-        this.group(reference.group());
-        this.version(reference.version());
-    }
-
-    public static AnnotationBeanNameBuilder create(Service service, Class<?> 
interfaceClass) {
-        return new AnnotationBeanNameBuilder(service, interfaceClass);
-    }
-
-    public static AnnotationBeanNameBuilder create(Reference reference, 
Class<?> interfaceClass) {
-        return new AnnotationBeanNameBuilder(reference, interfaceClass);
-    }
-
-    private static void append(StringBuilder builder, String value) {
-        if (hasText(value)) {
-            builder.append(SEPARATOR).append(value);
-        }
-    }
-
-    public AnnotationBeanNameBuilder group(String group) {
-        this.group = group;
-        return this;
-    }
-
-    public AnnotationBeanNameBuilder version(String version) {
-        this.version = version;
-        return this;
-    }
-
-    public AnnotationBeanNameBuilder environment(Environment environment) {
-        this.environment = environment;
-        return this;
-    }
-
-    /**
-     * Resolve the protocol
-     *
-     * @param protocols one or more protocols
-     * @return if <code>protocols</code> == <code>null</code>, it will return
-     * {@link CommonConstants#DEFAULT_PROTOCOL "dubbo"} as the default protocol
-     * @see CommonConstants#DEFAULT_PROTOCOL
-     */
-    private static String resolveProtocol(String... protocols) {
-        String protocol = arrayToCommaDelimitedString(protocols);
-        return hasText(protocol) ? protocol : DEFAULT_PROTOCOL;
-    }
-
-    /**
-     * Build bean name while resolve the placeholders if possible.
-     *
-     * @return pattern : 
${category}:${protocol}:${serviceInterface}:${version}:${group}
-     */
-    public String build() {
-        // Append the required properties
-        StringBuilder beanNameBuilder = new StringBuilder(category);
-        append(beanNameBuilder, protocol);
-        append(beanNameBuilder, interfaceClassName);
-        // Append the optional properties
-        append(beanNameBuilder, version);
-        append(beanNameBuilder, group);
-        String beanName = beanNameBuilder.toString();
-        // Resolve placeholders
-        return environment != null ? environment.resolvePlaceholders(beanName) 
: beanName;
-    }
-}
diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceAnnotationBeanPostProcessor.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceAnnotationBeanPostProcessor.java
index e0ba649..f7cc7b7 100644
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceAnnotationBeanPostProcessor.java
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ReferenceAnnotationBeanPostProcessor.java
@@ -41,6 +41,8 @@ import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
 
+import static 
org.apache.dubbo.config.spring.beans.factory.annotation.ServiceBeanNameBuilder.create;
+
 /**
  * {@link org.springframework.beans.factory.config.BeanPostProcessor} 
implementation
  * that Consumer service {@link Reference} annotated fields
@@ -178,16 +180,14 @@ public class ReferenceAnnotationBeanPostProcessor extends 
AnnotationInjectedBean
 
         return buildReferencedBeanName(reference, injectedType) +
                 "#source=" + (injectedElement.getMember()) +
-                "#attributes=" + 
AnnotationUtils.getAttributes(reference,getEnvironment(),true);
+                "#attributes=" + AnnotationUtils.getAttributes(reference, 
getEnvironment(), true);
     }
 
     private String buildReferencedBeanName(Reference reference, Class<?> 
injectedType) {
 
-        AnnotationBeanNameBuilder builder = 
AnnotationBeanNameBuilder.create(reference, injectedType);
-
-        builder.environment(getEnvironment());
+        ServiceBeanNameBuilder serviceBeanNameBuilder = create(reference, 
injectedType, getEnvironment());
 
-        return getEnvironment().resolvePlaceholders(builder.build());
+        return serviceBeanNameBuilder.build();
     }
 
     private ReferenceBean buildReferenceBeanIfAbsent(String 
referencedBeanName, Reference reference,
diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceAnnotationBeanPostProcessor.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceAnnotationBeanPostProcessor.java
index e167c07..2dec2d3 100644
--- 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceAnnotationBeanPostProcessor.java
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceAnnotationBeanPostProcessor.java
@@ -60,6 +60,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
+import static 
org.apache.dubbo.config.spring.beans.factory.annotation.ServiceBeanNameBuilder.create;
 import static org.apache.dubbo.config.spring.util.ObjectUtils.of;
 import static 
org.springframework.beans.factory.support.BeanDefinitionBuilder.rootBeanDefinition;
 import static 
org.springframework.context.annotation.AnnotationConfigUtils.CONFIGURATION_BEAN_NAME_GENERATOR;
@@ -259,7 +260,7 @@ public class ServiceAnnotationBeanPostProcessor implements 
BeanDefinitionRegistr
                 buildServiceBeanDefinition(service, interfaceClass, 
annotatedServiceBeanName);
 
         // ServiceBean Bean name
-        String beanName = generateServiceBeanName(service, interfaceClass, 
annotatedServiceBeanName);
+        String beanName = generateServiceBeanName(service, interfaceClass);
 
         if (scanner.checkCandidate(beanName, serviceBeanDefinition)) { // 
check duplicated candidate bean
             registry.registerBeanDefinition(beanName, serviceBeanDefinition);
@@ -285,19 +286,14 @@ public class ServiceAnnotationBeanPostProcessor 
implements BeanDefinitionRegistr
      * Generates the bean name of {@link ServiceBean}
      *
      * @param service
-     * @param interfaceClass           the class of interface annotated {@link 
Service}
-     * @param annotatedServiceBeanName the bean name of annotated {@link 
Service}
+     * @param interfaceClass the class of interface annotated {@link Service}
      * @return ServiceBean@interfaceClassName#annotatedServiceBeanName
      * @since 2.5.9
      */
-    private String generateServiceBeanName(Service service, Class<?> 
interfaceClass, String annotatedServiceBeanName) {
-
-        AnnotationBeanNameBuilder builder = 
AnnotationBeanNameBuilder.create(service, interfaceClass);
-
-        builder.environment(environment);
+    private String generateServiceBeanName(Service service, Class<?> 
interfaceClass) {
+        ServiceBeanNameBuilder builder = create(service, interfaceClass, 
environment);
 
         return builder.build();
-
     }
 
     private Class<?> resolveServiceInterfaceClass(Class<?> 
annotatedServiceBeanClass, Service service) {
diff --git 
a/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceBeanNameBuilder.java
 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceBeanNameBuilder.java
new file mode 100644
index 0000000..5d27251
--- /dev/null
+++ 
b/dubbo-config/dubbo-config-spring/src/main/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceBeanNameBuilder.java
@@ -0,0 +1,112 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.dubbo.config.spring.beans.factory.annotation;
+
+import org.apache.dubbo.config.annotation.Reference;
+import org.apache.dubbo.config.annotation.Service;
+import org.apache.dubbo.config.spring.ReferenceBean;
+import org.apache.dubbo.config.spring.ServiceBean;
+
+import org.springframework.core.env.Environment;
+import org.springframework.util.StringUtils;
+
+import static 
org.apache.dubbo.config.spring.util.AnnotationUtils.resolveInterfaceName;
+
+/**
+ * Dubbo {@link Service @Service} Bean Builder
+ *
+ * @see Service
+ * @see Reference
+ * @see ServiceBean
+ * @see ReferenceBean
+ * @since 2.6.5
+ */
+public class ServiceBeanNameBuilder {
+
+    private static final String SEPARATOR = ":";
+
+    private final String interfaceClassName;
+
+    private final Environment environment;
+
+    // Optional
+    private String version;
+
+    private String group;
+
+    private ServiceBeanNameBuilder(String interfaceClassName, Environment 
environment) {
+        this.interfaceClassName = interfaceClassName;
+        this.environment = environment;
+    }
+
+    private ServiceBeanNameBuilder(Class<?> interfaceClass, Environment 
environment) {
+        this(interfaceClass.getName(), environment);
+    }
+
+    private ServiceBeanNameBuilder(Service service, Class<?> interfaceClass, 
Environment environment) {
+        this(resolveInterfaceName(service, interfaceClass), environment);
+        this.group(service.group());
+        this.version(service.version());
+    }
+
+    private ServiceBeanNameBuilder(Reference reference, Class<?> 
interfaceClass, Environment environment) {
+        this(resolveInterfaceName(reference, interfaceClass), environment);
+        this.group(reference.group());
+        this.version(reference.version());
+    }
+
+    public static ServiceBeanNameBuilder create(Class<?> interfaceClass, 
Environment environment) {
+        return new ServiceBeanNameBuilder(interfaceClass, environment);
+    }
+
+    public static ServiceBeanNameBuilder create(Service service, Class<?> 
interfaceClass, Environment environment) {
+        return new ServiceBeanNameBuilder(service, interfaceClass, 
environment);
+    }
+
+    public static ServiceBeanNameBuilder create(Reference reference, Class<?> 
interfaceClass, Environment environment) {
+        return new ServiceBeanNameBuilder(reference, interfaceClass, 
environment);
+    }
+
+    private static void append(StringBuilder builder, String value) {
+        if (StringUtils.hasText(value)) {
+            builder.append(value).append(SEPARATOR);
+        }
+    }
+
+    public ServiceBeanNameBuilder group(String group) {
+        this.group = group;
+        return this;
+    }
+
+    public ServiceBeanNameBuilder version(String version) {
+        this.version = version;
+        return this;
+    }
+
+    public String build() {
+        StringBuilder beanNameBuilder = new 
StringBuilder("ServiceBean").append(SEPARATOR);
+        // Required
+        append(beanNameBuilder, interfaceClassName);
+        // Optional
+        append(beanNameBuilder, version);
+        append(beanNameBuilder, group);
+        // Build and remove last ":"
+        String rawBeanName = beanNameBuilder.substring(0, 
beanNameBuilder.length() - 1);
+        // Resolve placeholders
+        return environment.resolvePlaceholders(rawBeanName);
+    }
+}
diff --git 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilderTest.java
 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceBeanNameBuilderTest.java
similarity index 67%
rename from 
dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilderTest.java
rename to 
dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceBeanNameBuilderTest.java
index 2e79109..747fc1e 100644
--- 
a/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/AnnotationBeanNameBuilderTest.java
+++ 
b/dubbo-config/dubbo-config-spring/src/test/java/org/apache/dubbo/config/spring/beans/factory/annotation/ServiceBeanNameBuilderTest.java
@@ -27,18 +27,18 @@ import org.springframework.core.annotation.AnnotationUtils;
 import org.springframework.mock.env.MockEnvironment;
 import org.springframework.util.ReflectionUtils;
 
-import static 
org.apache.dubbo.config.spring.beans.factory.annotation.AnnotationBeanNameBuilderTest.GROUP;
-import static 
org.apache.dubbo.config.spring.beans.factory.annotation.AnnotationBeanNameBuilderTest.VERSION;
+import static 
org.apache.dubbo.config.spring.beans.factory.annotation.ServiceBeanNameBuilderTest.GROUP;
+import static 
org.apache.dubbo.config.spring.beans.factory.annotation.ServiceBeanNameBuilderTest.VERSION;
 
 /**
- * {@link AnnotationBeanNameBuilder} Test
+ * {@link ServiceBeanNameBuilder} Test
  *
- * @see AnnotationBeanNameBuilder
+ * @see ServiceBeanNameBuilder
  * @since 2.6.6
  */
 @Service(interfaceClass = DemoService.class, group = GROUP, version = VERSION,
         application = "application", module = "module", registry = {"1", "2", 
"3"})
-public class AnnotationBeanNameBuilderTest {
+public class ServiceBeanNameBuilderTest {
 
     @Reference(interfaceClass = DemoService.class, group = "DUBBO", version = 
"${dubbo.version}",
             application = "application", module = "module", registry = {"1", 
"2", "3"})
@@ -58,25 +58,20 @@ public class AnnotationBeanNameBuilderTest {
 
     @Test
     public void testServiceAnnotation() {
-        Service service = 
AnnotationUtils.getAnnotation(AnnotationBeanNameBuilderTest.class, 
Service.class);
-        AnnotationBeanNameBuilder builder = 
AnnotationBeanNameBuilder.create(service, INTERFACE_CLASS);
-        
Assert.assertEquals("providers:dubbo:org.apache.dubbo.config.spring.api.DemoService:1.0.0:DUBBO",
+        Service service = 
AnnotationUtils.getAnnotation(ServiceBeanNameBuilderTest.class, Service.class);
+        ServiceBeanNameBuilder builder = 
ServiceBeanNameBuilder.create(service, INTERFACE_CLASS, environment);
+        
Assert.assertEquals("ServiceBean:org.apache.dubbo.config.spring.api.DemoService:1.0.0:DUBBO",
                 builder.build());
 
-        builder.environment(environment);
-        
Assert.assertEquals("providers:dubbo:org.apache.dubbo.config.spring.api.DemoService:1.0.0:DUBBO",
+        
Assert.assertEquals("ServiceBean:org.apache.dubbo.config.spring.api.DemoService:1.0.0:DUBBO",
                 builder.build());
     }
 
     @Test
     public void testReferenceAnnotation() {
-        Reference reference = 
AnnotationUtils.getAnnotation(ReflectionUtils.findField(AnnotationBeanNameBuilderTest.class,
 "INTERFACE_CLASS"), Reference.class);
-        AnnotationBeanNameBuilder builder = 
AnnotationBeanNameBuilder.create(reference, INTERFACE_CLASS);
-        
Assert.assertEquals("consumers:dubbo:org.apache.dubbo.config.spring.api.DemoService:${dubbo.version}:DUBBO",
-                builder.build());
-
-        builder.environment(environment);
-        
Assert.assertEquals("consumers:dubbo:org.apache.dubbo.config.spring.api.DemoService:1.0.0:DUBBO",
+        Reference reference = 
AnnotationUtils.getAnnotation(ReflectionUtils.findField(ServiceBeanNameBuilderTest.class,
 "INTERFACE_CLASS"), Reference.class);
+        ServiceBeanNameBuilder builder = 
ServiceBeanNameBuilder.create(reference, INTERFACE_CLASS, environment);
+        
Assert.assertEquals("ServiceBean:org.apache.dubbo.config.spring.api.DemoService:1.0.0:DUBBO",
                 builder.build());
     }
 
diff --git a/dubbo-registry/dubbo-registry-nacos/pom.xml 
b/dubbo-registry/dubbo-registry-nacos/pom.xml
index b8c952d..675901e 100644
--- a/dubbo-registry/dubbo-registry-nacos/pom.xml
+++ b/dubbo-registry/dubbo-registry-nacos/pom.xml
@@ -93,49 +93,6 @@
 
         <!-- REST support dependencies -->
         <dependency>
-            <groupId>org.apache.dubbo</groupId>
-            <artifactId>dubbo-rpc-rest</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-jaxrs</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-client</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-netty4</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>javax.validation</groupId>
-            <artifactId>validation-api</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-jackson-provider</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>org.jboss.resteasy</groupId>
-            <artifactId>resteasy-jaxb-provider</artifactId>
-            <scope>test</scope>
-        </dependency>
-
-        <dependency>
             <groupId>org.springframework</groupId>
             <artifactId>spring-test</artifactId>
             <scope>test</scope>
diff --git 
a/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConsumerBootstrap.java
 
b/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConsumerBootstrap.java
index b411d4a..f11bdb5 100644
--- 
a/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConsumerBootstrap.java
+++ 
b/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/consumer/DemoServiceConsumerBootstrap.java
@@ -37,14 +37,10 @@ public class DemoServiceConsumerBootstrap {
     @Reference(version = "${demo.service.version}")
     private DemoService demoService;
 
-    @Reference(version = "${demo.service.version}", protocol = "rest")
-    private DemoService restDemoService;
-
     @PostConstruct
     public void init() throws InterruptedException {
         for (int j = 0; j < 10; j++) {
             System.out.println(demoService.sayName("小马哥(mercyblitz)"));
-            System.out.println(restDemoService.sayName("小马哥(mercyblitz)"));
         }
         Thread.sleep(TimeUnit.SECONDS.toMillis(5));
     }
diff --git 
a/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/service/DemoService.java
 
b/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/service/DemoService.java
index 0c80877..77ac1b6 100644
--- 
a/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/service/DemoService.java
+++ 
b/dubbo-registry/dubbo-registry-nacos/src/test/java/org/apache/dubbo/demo/service/DemoService.java
@@ -16,19 +16,13 @@
  */
 package org.apache.dubbo.demo.service;
 
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.QueryParam;
-
 /**
  * DemoService
  *
  * @since 2.6.5
  */
-@Path("/demo-service")
 public interface DemoService {
 
-    @GET
-    String sayName(@QueryParam("name") String name);
+    String sayName(String name);
 
 }
\ No newline at end of file
diff --git 
a/dubbo-registry/dubbo-registry-nacos/src/test/resources/provider-config.properties
 
b/dubbo-registry/dubbo-registry-nacos/src/test/resources/provider-config.properties
index e2dd335..7e2046b 100644
--- 
a/dubbo-registry/dubbo-registry-nacos/src/test/resources/provider-config.properties
+++ 
b/dubbo-registry/dubbo-registry-nacos/src/test/resources/provider-config.properties
@@ -6,9 +6,6 @@ dubbo.registry.address=127.0.0.1:8848
 ## Exports multiple protocols
 ### Dubbo Protocol using random port
 dubbo.protocols.dubbo.port=-1
-### REST protocol
-dubbo.protocols.rest.port=9090
-dubbo.protocols.rest.server=netty
 # Provider @Service info
 demo.service.version=1.0.0
 demo.service.name=demoService
\ No newline at end of file

Reply via email to