diff --git a/spring-cloud-alibaba-dependencies/pom.xml b/spring-cloud-alibaba-dependencies/pom.xml
index 73f35e85..b7e106c6 100644
--- a/spring-cloud-alibaba-dependencies/pom.xml
+++ b/spring-cloud-alibaba-dependencies/pom.xml
@@ -29,9 +29,6 @@
2.16.0
4.3.1
2.1.6
- 2.6.5
- 0.2.1.RELEASE
- 0.0.2
1.1.0
1.1.8
1.1.0
@@ -210,50 +207,6 @@
${oss.version}
-
-
- com.alibaba
- dubbo-dependencies-bom
- ${dubbo.version}
- pom
- import
-
-
-
-
- com.alibaba
- dubbo
- ${dubbo.version}
-
-
- org.springframework
- spring-context
-
-
- javax.servlet
- servlet-api
-
-
- log4j
- log4j
-
-
-
-
-
-
- com.alibaba.boot
- dubbo-spring-boot-starter
- ${dubbo-spring-boot.version}
-
-
-
-
- com.alibaba
- dubbo-registry-nacos
- ${dubbo-registry-nacos.version}
-
-
org.springframework.cloud
@@ -453,4 +406,4 @@
-
+
\ No newline at end of file
diff --git a/spring-cloud-alibaba-dubbo/pom.xml b/spring-cloud-alibaba-dubbo/pom.xml
index 94467a24..84711e8b 100644
--- a/spring-cloud-alibaba-dubbo/pom.xml
+++ b/spring-cloud-alibaba-dubbo/pom.xml
@@ -13,6 +13,72 @@
spring-cloud-alibaba-dubbo
Spring Cloud Alibaba Dubbo
+
+ 2.6.5
+ 0.2.1.RELEASE
+ 0.0.2
+
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-dependencies
+ ${spring-boot.version}
+ pom
+ import
+
+
+
+
+ com.alibaba
+ dubbo-dependencies-bom
+ ${dubbo.version}
+ pom
+ import
+
+
+
+
+ com.alibaba
+ dubbo
+ ${dubbo.version}
+
+
+ org.springframework
+ spring-context
+
+
+ javax.servlet
+ servlet-api
+
+
+ log4j
+ log4j
+
+
+
+
+
+
+ com.alibaba.boot
+ dubbo-spring-boot-starter
+ ${dubbo-spring-boot.version}
+
+
+
+
+ com.alibaba
+ dubbo-registry-nacos
+ ${dubbo-registry-nacos.version}
+
+
+
+
+
+
@@ -170,9 +236,9 @@
-
-
-
+
+
+
diff --git a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/MutableHttpServerRequest.java b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/MutableHttpServerRequest.java
index eab82ea9..62240f3b 100644
--- a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/MutableHttpServerRequest.java
+++ b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/MutableHttpServerRequest.java
@@ -16,7 +16,6 @@
*/
package org.springframework.cloud.alibaba.dubbo.http;
-import org.springframework.http.HttpCookie;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpInputMessage;
import org.springframework.http.HttpMethod;
@@ -29,7 +28,6 @@ import java.net.URI;
import java.util.Map;
import static org.springframework.cloud.alibaba.dubbo.http.util.HttpUtils.getParameters;
-import static org.springframework.cloud.alibaba.dubbo.http.util.HttpUtils.parseCookies;
/**
* Mutable {@link HttpServerRequest} implementation
@@ -48,18 +46,15 @@ public class MutableHttpServerRequest implements HttpServerRequest {
private final HttpHeaders httpHeaders;
- private final MultiValueMap cookies;
-
private final HttpInputMessage httpInputMessage;
public MutableHttpServerRequest(HttpRequest httpRequest, byte[] body) {
this.httpMethod = httpRequest.getMethod();
this.uri = httpRequest.getURI();
this.path = uri.getPath();
- this.httpHeaders = new HttpHeaders(httpRequest.getHeaders());
+ this.httpHeaders = httpRequest.getHeaders();
this.queryParams = getParameters(httpRequest);
this.httpInputMessage = new ByteArrayHttpInputMessage(body);
- this.cookies = parseCookies(httpHeaders);
}
public MutableHttpServerRequest params(Map params) {
diff --git a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractHttpRequestMatcher.java b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractHttpRequestMatcher.java
index 8b4da7bb..3e16664c 100644
--- a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractHttpRequestMatcher.java
+++ b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractHttpRequestMatcher.java
@@ -16,8 +16,6 @@
*/
package org.springframework.cloud.alibaba.dubbo.http.matcher;
-import org.springframework.lang.Nullable;
-
import java.util.Collection;
import java.util.Iterator;
@@ -45,7 +43,7 @@ public abstract class AbstractHttpRequestMatcher implements HttpRequestMatcher {
protected abstract String getToStringInfix();
@Override
- public boolean equals(@Nullable Object other) {
+ public boolean equals(Object other) {
if (this == other) {
return true;
}
diff --git a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractNameValueExpression.java b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractNameValueExpression.java
index a08cee30..695e6792 100644
--- a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractNameValueExpression.java
+++ b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/matcher/AbstractNameValueExpression.java
@@ -17,7 +17,6 @@
package org.springframework.cloud.alibaba.dubbo.http.matcher;
import org.springframework.http.HttpRequest;
-import org.springframework.lang.Nullable;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
@@ -75,7 +74,6 @@ abstract class AbstractNameValueExpression implements NameValueExpression
}
@Override
- @Nullable
public T getValue() {
return this.value;
}
diff --git a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/util/HttpUtils.java b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/util/HttpUtils.java
index c1b43b6a..9340e86f 100644
--- a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/util/HttpUtils.java
+++ b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/http/util/HttpUtils.java
@@ -16,8 +16,6 @@
*/
package org.springframework.cloud.alibaba.dubbo.http.util;
-import org.springframework.http.HttpCookie;
-import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpRequest;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
@@ -33,11 +31,9 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
-import static org.springframework.http.HttpHeaders.COOKIE;
import static org.springframework.util.StringUtils.delimitedListToStringArray;
import static org.springframework.util.StringUtils.hasText;
import static org.springframework.util.StringUtils.trimAllWhitespace;
-import static org.springframework.util.StringUtils.trimWhitespace;
/**
* Http Utilities class
@@ -138,30 +134,30 @@ public abstract class HttpUtils {
return getParameters(Arrays.asList(pairs));
}
- /**
- * Parse a read-only {@link MultiValueMap} of {@link HttpCookie} from {@link HttpHeaders}
- *
- * @param httpHeaders {@link HttpHeaders}
- * @return non-null, the key is a cookie name , the value is {@link HttpCookie}
- */
- public static MultiValueMap parseCookies(HttpHeaders httpHeaders) {
-
- String cookie = httpHeaders.getFirst(COOKIE);
-
- String[] cookieNameAndValues = StringUtils.delimitedListToStringArray(cookie, SEMICOLON);
-
- MultiValueMap cookies = new LinkedMultiValueMap<>(cookieNameAndValues.length);
-
- for (String cookeNameAndValue : cookieNameAndValues) {
- String[] nameAndValue = delimitedListToStringArray(trimWhitespace(cookeNameAndValue), EQUAL);
- String name = nameAndValue[0];
- String value = nameAndValue.length < 2 ? null : nameAndValue[1];
- HttpCookie httpCookie = new HttpCookie(name, value);
- cookies.add(name, httpCookie);
- }
-
- return cookies;
- }
+// /**
+// * Parse a read-only {@link MultiValueMap} of {@link HttpCookie} from {@link HttpHeaders}
+// *
+// * @param httpHeaders {@link HttpHeaders}
+// * @return non-null, the key is a cookie name , the value is {@link HttpCookie}
+// */
+// public static MultiValueMap parseCookies(HttpHeaders httpHeaders) {
+//
+// String cookie = httpHeaders.getFirst(COOKIE);
+//
+// String[] cookieNameAndValues = StringUtils.delimitedListToStringArray(cookie, SEMICOLON);
+//
+// MultiValueMap cookies = new LinkedMultiValueMap<>(cookieNameAndValues.length);
+//
+// for (String cookeNameAndValue : cookieNameAndValues) {
+// String[] nameAndValue = delimitedListToStringArray(trimWhitespace(cookeNameAndValue), EQUAL);
+// String name = nameAndValue[0];
+// String value = nameAndValue.length < 2 ? null : nameAndValue[1];
+// HttpCookie httpCookie = new HttpCookie(name, value);
+// cookies.add(name, httpCookie);
+// }
+//
+// return cookies;
+// }
/**
* To the name and value line sets
diff --git a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/MethodMetadata.java b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/MethodMetadata.java
index 8648f7c1..9dfe6ea4 100644
--- a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/MethodMetadata.java
+++ b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/MethodMetadata.java
@@ -19,7 +19,6 @@ package org.springframework.cloud.alibaba.dubbo.metadata;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
-import org.apache.commons.lang3.ClassUtils;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
@@ -53,7 +52,7 @@ public class MethodMetadata {
public MethodMetadata(Method method) {
this.name = method.getName();
- this.returnType = ClassUtils.getName(method.getReturnType());
+ this.returnType = method.getReturnType().getName();
this.params = initParameters(method);
this.method = method;
}
diff --git a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/resolver/DubboServiceBeanMetadataResolver.java b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/resolver/DubboServiceBeanMetadataResolver.java
index 45d53305..e3704dae 100644
--- a/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/resolver/DubboServiceBeanMetadataResolver.java
+++ b/spring-cloud-alibaba-dubbo/src/main/java/org/springframework/cloud/alibaba/dubbo/metadata/resolver/DubboServiceBeanMetadataResolver.java
@@ -56,7 +56,7 @@ public class DubboServiceBeanMetadataResolver implements BeanClassLoaderAware, S
"org.springframework.cloud.openfeign.support.SpringMvcContract",
};
- private final ObjectProvider contract;
+ private final ObjectProvider contractObjectProvider;
private ClassLoader classLoader;
@@ -65,8 +65,8 @@ public class DubboServiceBeanMetadataResolver implements BeanClassLoaderAware, S
*/
private Collection contracts;
- public DubboServiceBeanMetadataResolver(ObjectProvider contract) {
- this.contract = contract;
+ public DubboServiceBeanMetadataResolver(ObjectProvider contractObjectProvider) {
+ this.contractObjectProvider = contractObjectProvider;
}
@Override
@@ -75,7 +75,11 @@ public class DubboServiceBeanMetadataResolver implements BeanClassLoaderAware, S
LinkedList contracts = new LinkedList<>();
// Add injected Contract if available, for example SpringMvcContract Bean under Spring Cloud Open Feign
- contract.ifAvailable(contracts::add);
+ Contract contract = contractObjectProvider.getIfAvailable();
+
+ if (contract != null) {
+ contracts.add(contract);
+ }
Stream.of(CONTRACT_CLASS_NAMES)
.filter(this::isClassPresent) // filter the existed classes