Fix possible null pointer exception in ApiDocsDubboGenericUtil#invoke (#726)
diff --git a/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/utils/ApiDocsDubboGenericUtil.java b/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/utils/ApiDocsDubboGenericUtil.java
index 500009d..d9c8340 100644
--- a/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/utils/ApiDocsDubboGenericUtil.java
+++ b/dubbo-admin-server/src/main/java/org/apache/dubbo/admin/utils/ApiDocsDubboGenericUtil.java
@@ -175,13 +175,13 @@
} else {
future = CompletableFuture.supplyAsync(() -> genericService.$invoke(methodName, paramTypes, paramValues), EXECUTOR);
}
+ future.exceptionally(ex -> {
+ if (StringUtils.contains(ex.toString(), "Failed to invoke remote method")) {
+ removeReferenceConfig(address, interfaceName, version, group);
+ }
+ return ex;
+ });
}
- future.exceptionally(ex -> {
- if (StringUtils.contains(ex.toString(), "Failed to invoke remote method")) {
- removeReferenceConfig(address, interfaceName, version, group);
- }
- return ex;
- });
}
return future;
}