diff --git a/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java b/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java index fea884148e..37f5e820a0 100644 --- a/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java +++ b/dubbo-common/src/main/java/org/apache/dubbo/common/config/Environment.java @@ -159,7 +159,7 @@ public class Environment extends LifecycleAdapter implements FrameworkExt { public Configuration getDynamicGlobalConfiguration() { if (dynamicGlobalConfiguration == null) { - if (dynamicConfiguration != null) { + if (dynamicConfiguration == null) { throw new IllegalStateException("Init dynamic configuration before use."); } dynamicGlobalConfiguration = new CompositeConfiguration(); diff --git a/dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-consumer/src/main/resources/spring/dubbo-consumer.xml b/dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-consumer/src/main/resources/spring/dubbo-consumer.xml index 54757520c8..f71fc5f2fd 100644 --- a/dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-consumer/src/main/resources/spring/dubbo-consumer.xml +++ b/dubbo-demo/dubbo-demo-xml/dubbo-demo-xml-consumer/src/main/resources/spring/dubbo-consumer.xml @@ -23,12 +23,11 @@ - - + diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java index 5977a8b529..1a79ea2325 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/ServiceDiscoveryRegistry.java @@ -267,6 +267,7 @@ public class ServiceDiscoveryRegistry implements Registry { if (check) { throw new IllegalStateException("Should has at least one way to know which services this interface belongs to, subscription url: " + url); } + return; } subscribeURLs(url, listener, serviceNames); diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/ServiceDiscoveryMigrationInvoker.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/ServiceDiscoveryMigrationInvoker.java index 7d2642f0ce..fb9e17e59c 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/ServiceDiscoveryMigrationInvoker.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/migration/ServiceDiscoveryMigrationInvoker.java @@ -17,6 +17,8 @@ package org.apache.dubbo.registry.client.migration; import org.apache.dubbo.common.URL; +import org.apache.dubbo.common.logger.Logger; +import org.apache.dubbo.common.logger.LoggerFactory; import org.apache.dubbo.registry.Registry; import org.apache.dubbo.registry.integration.RegistryProtocol; import org.apache.dubbo.rpc.Invocation; @@ -26,6 +28,7 @@ import org.apache.dubbo.rpc.cluster.Cluster; import org.apache.dubbo.rpc.cluster.ClusterInvoker; public class ServiceDiscoveryMigrationInvoker extends MigrationInvoker { + private static final Logger logger = LoggerFactory.getLogger(ServiceDiscoveryMigrationInvoker.class); public ServiceDiscoveryMigrationInvoker(RegistryProtocol registryProtocol, Cluster cluster, Registry registry, Class type, URL url, URL consumerUrl) { super(registryProtocol, cluster, registry, type, url, consumerUrl); @@ -38,7 +41,8 @@ public class ServiceDiscoveryMigrationInvoker extends MigrationInvoker { @Override public synchronized void fallbackToInterfaceInvoker() { - destroyServiceDiscoveryInvoker(this.getServiceDiscoveryInvoker()); + logger.error("Service discovery registry type does not support discovery of interface level addresses, " + getRegistryUrl()); + migrateToServiceDiscoveryInvoker(true); } @Override