diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java b/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java index e2eef7084ac..d6b1d8736d3 100644 --- a/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java +++ b/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java @@ -20,7 +20,6 @@ import com.alibaba.dubbo.common.URL; import com.alibaba.dubbo.common.logger.Logger; import com.alibaba.dubbo.common.logger.LoggerFactory; -import com.alibaba.dubbo.common.utils.NetUtils; import com.alibaba.dubbo.common.utils.StringUtils; import com.alibaba.dubbo.common.utils.UrlUtils; import com.alibaba.dubbo.registry.NotifyListener; @@ -349,8 +348,8 @@ protected Registration createRegistration(String serviceName, URL url) { Constants.DEFAULT_CATEGORY); URL newURL = url.addParameter(Constants.CATEGORY_KEY, category); newURL = newURL.addParameter(Constants.PROTOCOL_KEY, url.getProtocol()); - String ip = NetUtils.getLocalHost(); - int port = newURL.getParameter(Constants.BIND_PORT_KEY, url.getPort()); + String ip = url.getHost(); + int port = url.getPort(); DubboRegistration registration = new DubboRegistration(); registration.setServiceName(serviceName); registration.setIp(ip); diff --git a/dubbo-registry/dubbo-registry-nacos/pom.xml b/dubbo-registry/dubbo-registry-nacos/pom.xml index d67333e8b5b..e93085cf8a9 100644 --- a/dubbo-registry/dubbo-registry-nacos/pom.xml +++ b/dubbo-registry/dubbo-registry-nacos/pom.xml @@ -70,7 +70,7 @@ com.alibaba - dubbo-remoting-netty + dubbo-remoting-netty4 ${project.version} test diff --git a/dubbo-rpc/dubbo-rpc-rest/src/main/java/com/alibaba/dubbo/rpc/protocol/rest/RestProtocol.java b/dubbo-rpc/dubbo-rpc-rest/src/main/java/com/alibaba/dubbo/rpc/protocol/rest/RestProtocol.java index 78b5debc960..be4225cdcfc 100644 --- a/dubbo-rpc/dubbo-rpc-rest/src/main/java/com/alibaba/dubbo/rpc/protocol/rest/RestProtocol.java +++ b/dubbo-rpc/dubbo-rpc-rest/src/main/java/com/alibaba/dubbo/rpc/protocol/rest/RestProtocol.java @@ -25,6 +25,7 @@ import com.alibaba.dubbo.rpc.RpcException; import com.alibaba.dubbo.rpc.StaticContext; import com.alibaba.dubbo.rpc.protocol.AbstractProxyProtocol; + import org.apache.http.HeaderElement; import org.apache.http.HeaderElementIterator; import org.apache.http.HttpResponse; @@ -231,8 +232,13 @@ public void destroy() { } protected String getContextPath(URL url) { - int pos = url.getPath().lastIndexOf("/"); - return pos > 0 ? url.getPath().substring(0, pos) : ""; + String path = url.getPath(); + if (path != null) { + int pos = url.getPath().lastIndexOf("/"); + return pos > 0 ? url.getPath().substring(0, pos) : ""; + } else { + return ""; + } } protected class ConnectionMonitor extends Thread {