From 1103ac39595027acdd5eae24bb751528257fef2e Mon Sep 17 00:00:00 2001 From: ruansheng <chrisruans@gmail.com> Date: Mon, 31 Oct 2022 17:13:23 +0800 Subject: [PATCH] Fix nacos config namespace --- .../cloud/nacos/NacosConfigProperties.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java index f41f08814..ff54d94c3 100644 --- a/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java +++ b/spring-cloud-alibaba-starters/spring-cloud-starter-alibaba-nacos-config/src/main/java/com/alibaba/cloud/nacos/NacosConfigProperties.java @@ -84,6 +84,11 @@ public class NacosConfigProperties { */ public static final String SEPARATOR = "[,]"; + /** + * Nacos default namespace . + */ + public static final String DEFAULT_NAMESPACE = "public"; + private static final Pattern PATTERN = Pattern.compile("-(\\w)"); private static final Logger log = LoggerFactory @@ -560,7 +565,7 @@ public class NacosConfigProperties { properties.put(USERNAME, Objects.toString(this.username, "")); properties.put(PASSWORD, Objects.toString(this.password, "")); properties.put(ENCODE, Objects.toString(this.encode, "")); - properties.put(NAMESPACE, Objects.toString(this.namespace, "")); + properties.put(NAMESPACE, this.resolveNamespace()); properties.put(ACCESS_KEY, Objects.toString(this.accessKey, "")); properties.put(SECRET_KEY, Objects.toString(this.secretKey, "")); properties.put(RAM_ROLE_NAME, Objects.toString(this.ramRoleName, "")); @@ -585,6 +590,16 @@ public class NacosConfigProperties { return properties; } + private String resolveNamespace() { + if (DEFAULT_NAMESPACE.equals(this.namespace)) { + log.info("set nacos config namespace 'public' to ''"); + return ""; + } + else { + return Objects.toString(this.namespace, ""); + } + } + private void enrichNacosConfigProperties(Properties nacosConfigProperties) { if (environment == null) { return;