This is an automated email from the ASF dual-hosted git repository.
liubao pushed a commit to branch 2.8.x
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git
The following commit(s) were added to refs/heads/2.8.x by this push:
new cd5e35bb5 [#4375] Fix local registry not find cross app name alias
(#4377)
cd5e35bb5 is described below
commit cd5e35bb53029a22ead397d45195d7ad265efeb2
Author: liubao68 <[email protected]>
AuthorDate: Thu Jun 20 09:41:47 2024 +0800
[#4375] Fix local registry not find cross app name alias (#4377)
---
.../demo/localRegistryClient/Application.java | 3 ++
.../LocalRegistryServerTest.java | 9 ++++++
.../ServerEndpoint.yaml} | 36 ++++++++++++++++------
.../src/main/resources/registry.yaml | 12 +++++++-
.../registry/consumer/MicroserviceVersions.java | 2 +-
5 files changed, 50 insertions(+), 12 deletions(-)
diff --git
a/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/Application.java
b/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/Application.java
index c6ed407b0..5c937b674 100644
---
a/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/Application.java
+++
b/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/Application.java
@@ -45,6 +45,9 @@ public class Application {
RegistrationManager.INSTANCE.getSwaggerLoader().registerSwagger("demo-local-registry",
"demo-local-registry-server",
"CodeFirstEndpoint", CodeFirstService.class);
+
RegistrationManager.INSTANCE.getSwaggerLoader().registerSwagger("demo-local-registry-cross",
+ "demo-local-registry-server-cross",
+ "CodeFirstEndpoint", CodeFirstService.class);
RegistrationManager.INSTANCE.getSwaggerLoader().registerSwagger("demo-local-registry",
"demo-local-registry-server-bean",
"CodeFirstEndpoint", CodeFirstService.class);
diff --git
a/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/LocalRegistryServerTest.java
b/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/LocalRegistryServerTest.java
index c50508cc0..f914b53ad 100644
---
a/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/LocalRegistryServerTest.java
+++
b/demo/demo-local-registry/demo-local-registry-client/src/main/java/org/apache/servicecomb/demo/localRegistryClient/LocalRegistryServerTest.java
@@ -33,6 +33,10 @@ public class LocalRegistryServerTest implements
CategorizedTestCase {
@RpcReference(microserviceName = "demo-local-registry-server", schemaId =
"CodeFirstEndpoint")
private CodeFirstService codeFirstService;
+ @RpcReference(microserviceName =
"demo-local-registry-cross:demo-local-registry-server-cross",
+ schemaId = "CodeFirstEndpoint")
+ private CodeFirstService codeFirstServiceCross;
+
@RpcReference(microserviceName = "demo-local-registry-server-bean", schemaId
= "CodeFirstEndpoint")
private CodeFirstService codeFirstServiceBean;
@@ -62,6 +66,7 @@ public class LocalRegistryServerTest implements
CategorizedTestCase {
private void testCodeFirstGetName() {
TestMgr.check("2", codeFirstService.getName("2"));
+ TestMgr.check("2", codeFirstServiceCross.getName("2"));
TestMgr.check("2", codeFirstServiceBean.getName("2"));
TestMgr.check("2", codeFirstServiceBean2.getName("2"));
}
@@ -71,6 +76,10 @@ public class LocalRegistryServerTest implements
CategorizedTestCase {
TestMgr.check("2", template
.getForObject("cse://demo-local-registry-server/register/url/prefix/getName?name=2",
String.class));
+ TestMgr.check("2", template
+ .getForObject(
+
"cse://demo-local-registry-cross:demo-local-registry-server-cross/register/url/prefix/getName?name=2",
+ String.class));
TestMgr.check("2", template
.getForObject("cse://demo-local-registry-server-bean/register/url/prefix/getName?name=2",
String.class));
diff --git
a/demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
b/demo/demo-local-registry/demo-local-registry-client/src/main/resources/applications/demo-local-registry-cross/demo-local-registry-server-cross/ServerEndpoint.yaml
similarity index 62%
copy from
demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
copy to
demo/demo-local-registry/demo-local-registry-client/src/main/resources/applications/demo-local-registry-cross/demo-local-registry-server-cross/ServerEndpoint.yaml
index 2ad3c2326..78c9d1bca 100644
---
a/demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
+++
b/demo/demo-local-registry/demo-local-registry-client/src/main/resources/applications/demo-local-registry-cross/demo-local-registry-server-cross/ServerEndpoint.yaml
@@ -15,13 +15,29 @@
## limitations under the License.
## ---------------------------------------------------------------------------
-demo-local-registry-server:
- - id: "001"
- version: "1.0"
- appid: demo-local-registry
- schemaIds:
- - ServerEndpoint
- - CodeFirstEndpoint
- instances:
- - endpoints:
- - rest://localhost:8080
\ No newline at end of file
+swagger: "2.0"
+info:
+ version: "1.0.0"
+ title: "swagger definition for
org.apache.servicecomb.demo.registry.ServerEndpoint"
+ x-java-interface: "gen.swagger.ServerEndpointIntf"
+basePath: "/register/url/prefix"
+schemes:
+- "http"
+consumes:
+- "application/json"
+produces:
+- "application/json"
+paths:
+ /getName:
+ get:
+ operationId: "getName"
+ parameters:
+ - name: "name"
+ in: "query"
+ required: true
+ type: "string"
+ responses:
+ "200":
+ description: "response of 200"
+ schema:
+ type: "string"
\ No newline at end of file
diff --git
a/demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
b/demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
index 2ad3c2326..f0e611e56 100644
---
a/demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
+++
b/demo/demo-local-registry/demo-local-registry-client/src/main/resources/registry.yaml
@@ -16,9 +16,19 @@
## ---------------------------------------------------------------------------
demo-local-registry-server:
- - id: "001"
+ - id: "service-001"
version: "1.0"
appid: demo-local-registry
+ schemaIds:
+ - ServerEndpoint
+ - CodeFirstEndpoint
+ instances:
+ - endpoints:
+ - rest://localhost:8080
+demo-local-registry-server-cross:
+ - id: "service-002"
+ version: "1.0"
+ appid: demo-local-registry-cross
schemaIds:
- ServerEndpoint
- CodeFirstEndpoint
diff --git
a/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/consumer/MicroserviceVersions.java
b/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/consumer/MicroserviceVersions.java
index 16744f7bc..99bc20219 100644
---
a/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/consumer/MicroserviceVersions.java
+++
b/foundations/foundation-registry/src/main/java/org/apache/servicecomb/registry/consumer/MicroserviceVersions.java
@@ -188,7 +188,7 @@ public class MicroserviceVersions {
protected MicroserviceInstances findServiceInstances() {
return DiscoveryManager.INSTANCE.findServiceInstances(appId,
- microserviceName,
+ shortName,
DefinitionConst.VERSION_RULE_ALL,
revision);
}