diff --git a/dubbo-dependencies-bom/pom.xml b/dubbo-dependencies-bom/pom.xml
index c2426e27e70..770bf1e5bc6 100644
--- a/dubbo-dependencies-bom/pom.xml
+++ b/dubbo-dependencies-bom/pom.xml
@@ -146,7 +146,7 @@
1.9.12
- 1.0.6
+ 1.0.7
2.2.7
1.2.0
@@ -163,7 +163,7 @@
6.1.26
2.0
1.1.0
- 2.7.8-SNAPSHOT
+ 2.7.8
diff --git a/dubbo-dependencies/dubbo-dependencies-zookeeper/pom.xml b/dubbo-dependencies/dubbo-dependencies-zookeeper/pom.xml
index 843b2c4d74a..f6bd75051a5 100644
--- a/dubbo-dependencies/dubbo-dependencies-zookeeper/pom.xml
+++ b/dubbo-dependencies/dubbo-dependencies-zookeeper/pom.xml
@@ -32,7 +32,7 @@
pom
- 2.7.8-SNAPSHOT
+ 2.7.8
1.1.0
diff --git a/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/util/NacosNamingServiceUtils.java b/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/util/NacosNamingServiceUtils.java
index 789adeefaad..cdfcf8a839a 100644
--- a/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/util/NacosNamingServiceUtils.java
+++ b/dubbo-registry/dubbo-registry-nacos/src/main/java/org/apache/dubbo/registry/nacos/util/NacosNamingServiceUtils.java
@@ -24,35 +24,20 @@
import org.apache.dubbo.registry.client.ServiceInstance;
import com.alibaba.nacos.api.NacosFactory;
+import com.alibaba.nacos.api.PropertyKeyConst;
import com.alibaba.nacos.api.exception.NacosException;
import com.alibaba.nacos.api.naming.NamingService;
import com.alibaba.nacos.api.naming.pojo.Instance;
import com.alibaba.nacos.api.naming.utils.NamingUtils;
+import java.util.Map;
import java.util.Properties;
-import static com.alibaba.nacos.api.PropertyKeyConst.ACCESS_KEY;
-import static com.alibaba.nacos.api.PropertyKeyConst.CLUSTER_NAME;
-import static com.alibaba.nacos.api.PropertyKeyConst.CONFIG_LONG_POLL_TIMEOUT;
-import static com.alibaba.nacos.api.PropertyKeyConst.CONFIG_RETRY_TIME;
-import static com.alibaba.nacos.api.PropertyKeyConst.CONTEXT_PATH;
-import static com.alibaba.nacos.api.PropertyKeyConst.ENABLE_REMOTE_SYNC_CONFIG;
-import static com.alibaba.nacos.api.PropertyKeyConst.ENCODE;
-import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT;
-import static com.alibaba.nacos.api.PropertyKeyConst.ENDPOINT_PORT;
-import static com.alibaba.nacos.api.PropertyKeyConst.IS_USE_CLOUD_NAMESPACE_PARSING;
-import static com.alibaba.nacos.api.PropertyKeyConst.IS_USE_ENDPOINT_PARSING_RULE;
-import static com.alibaba.nacos.api.PropertyKeyConst.MAX_RETRY;
-import static com.alibaba.nacos.api.PropertyKeyConst.NAMESPACE;
-import static com.alibaba.nacos.api.PropertyKeyConst.NAMING_CLIENT_BEAT_THREAD_COUNT;
import static com.alibaba.nacos.api.PropertyKeyConst.NAMING_LOAD_CACHE_AT_START;
-import static com.alibaba.nacos.api.PropertyKeyConst.NAMING_POLLING_THREAD_COUNT;
-import static com.alibaba.nacos.api.PropertyKeyConst.RAM_ROLE_NAME;
-import static com.alibaba.nacos.api.PropertyKeyConst.SECRET_KEY;
import static com.alibaba.nacos.api.PropertyKeyConst.SERVER_ADDR;
import static com.alibaba.nacos.api.common.Constants.DEFAULT_GROUP;
-import static com.alibaba.nacos.client.naming.utils.UtilAndComs.NACOS_NAMING_LOG_NAME;
import static org.apache.dubbo.common.constants.RemotingConstants.BACKUP_KEY;
+import static org.apache.dubbo.common.utils.StringConstantFieldValuePredicate.of;
/**
* The utilities class for {@link NamingService}
@@ -154,25 +139,13 @@ private static void setServerAddr(URL url, Properties properties) {
}
private static void setProperties(URL url, Properties properties) {
- putPropertyIfAbsent(url, properties, NACOS_NAMING_LOG_NAME);
- putPropertyIfAbsent(url, properties, IS_USE_CLOUD_NAMESPACE_PARSING);
- putPropertyIfAbsent(url, properties, IS_USE_ENDPOINT_PARSING_RULE);
- putPropertyIfAbsent(url, properties, ENDPOINT);
- putPropertyIfAbsent(url, properties, ENDPOINT_PORT);
- putPropertyIfAbsent(url, properties, NAMESPACE);
- putPropertyIfAbsent(url, properties, ACCESS_KEY);
- putPropertyIfAbsent(url, properties, SECRET_KEY);
- putPropertyIfAbsent(url, properties, RAM_ROLE_NAME);
- putPropertyIfAbsent(url, properties, CONTEXT_PATH);
- putPropertyIfAbsent(url, properties, CLUSTER_NAME);
- putPropertyIfAbsent(url, properties, ENCODE);
- putPropertyIfAbsent(url, properties, CONFIG_LONG_POLL_TIMEOUT);
- putPropertyIfAbsent(url, properties, CONFIG_RETRY_TIME);
- putPropertyIfAbsent(url, properties, MAX_RETRY);
- putPropertyIfAbsent(url, properties, ENABLE_REMOTE_SYNC_CONFIG);
+ // @since 2.7.8 : Refactoring
+ // Get the parameters from constants
+ Map parameters = url.getParameters(of(PropertyKeyConst.class));
+ // Put all parameters
+ properties.putAll(parameters);
+
putPropertyIfAbsent(url, properties, NAMING_LOAD_CACHE_AT_START, "true");
- putPropertyIfAbsent(url, properties, NAMING_CLIENT_BEAT_THREAD_COUNT);
- putPropertyIfAbsent(url, properties, NAMING_POLLING_THREAD_COUNT);
}
private static void putPropertyIfAbsent(URL url, Properties properties, String propertyName) {
diff --git a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java
index 954259b3276..07115901f13 100755
--- a/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java
+++ b/dubbo-remoting/dubbo-remoting-http/src/main/java/org/apache/dubbo/remoting/http/tomcat/TomcatHttpServer.java
@@ -31,8 +31,8 @@
import java.io.File;
-import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY;
import static org.apache.dubbo.common.constants.CommonConstants.DEFAULT_THREADS;
+import static org.apache.dubbo.common.constants.CommonConstants.THREADS_KEY;
import static org.apache.dubbo.remoting.Constants.ACCEPTS_KEY;
public class TomcatHttpServer extends AbstractHttpServer {
@@ -64,7 +64,10 @@ public TomcatHttpServer(URL url, final HttpHandler handler) {
Context context = tomcat.addContext("/", baseDir);
Tomcat.addServlet(context, "dispatcher", new DispatcherServlet());
- context.addServletMapping("/*", "dispatcher");
+ // Issue : https://github.com/apache/dubbo/issues/6418
+ // addServletMapping method will be removed since Tomcat 9
+ // context.addServletMapping("/*", "dispatcher");
+ context.addServletMappingDecoded("/*", "dispatcher");
ServletManager.getInstance().addServletContext(url.getPort(), context.getServletContext());
// tell tomcat to fail on startup failures.
diff --git a/dubbo-serialization/dubbo-serialization-hessian2/src/main/java/org/apache/dubbo/common/serialize/hessian2/Hessian2SerializerFactory.java b/dubbo-serialization/dubbo-serialization-hessian2/src/main/java/org/apache/dubbo/common/serialize/hessian2/Hessian2SerializerFactory.java
index 6a8db878977..f41e7dc35bf 100644
--- a/dubbo-serialization/dubbo-serialization-hessian2/src/main/java/org/apache/dubbo/common/serialize/hessian2/Hessian2SerializerFactory.java
+++ b/dubbo-serialization/dubbo-serialization-hessian2/src/main/java/org/apache/dubbo/common/serialize/hessian2/Hessian2SerializerFactory.java
@@ -28,4 +28,4 @@ public ClassLoader getClassLoader() {
return Thread.currentThread().getContextClassLoader();
}
-}
+}
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 1fcd25aa0f7..d605ae77d78 100644
--- a/pom.xml
+++ b/pom.xml
@@ -126,7 +126,7 @@
true
true
- 2.7.8-SNAPSHOT
+ 2.7.8