You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by mi...@apache.org on 2018/12/25 08:43:24 UTC
[incubator-dubbo-ops] branch service-test updated: make generic
invoke work in service test
This is an automated email from the ASF dual-hosted git repository.
min pushed a commit to branch service-test
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo-ops.git
The following commit(s) were added to refs/heads/service-test by this push:
new eb91984 make generic invoke work in service test
eb91984 is described below
commit eb919842db109742b3e52cf327e6f64de2878583
Author: nzomkxia <z8...@gmail.com>
AuthorDate: Tue Dec 25 16:43:19 2018 +0800
make generic invoke work in service test
---
dubbo-admin-backend/pom.xml | 10 ++++-----
.../admin/controller/ServiceTestController.java | 2 +-
.../dubbo/admin/model/dto/ServiceTestDTO.java | 6 ++---
.../admin/service/impl/GenericServiceImpl.java | 10 ++++++++-
.../src/components/ServiceTest.vue | 26 +++++++++++++++++-----
.../src/components/public/JsonEditor.vue | 2 +-
6 files changed, 40 insertions(+), 16 deletions(-)
diff --git a/dubbo-admin-backend/pom.xml b/dubbo-admin-backend/pom.xml
index d2510ae..c9c1a65 100644
--- a/dubbo-admin-backend/pom.xml
+++ b/dubbo-admin-backend/pom.xml
@@ -72,10 +72,10 @@
<artifactId>dubbo</artifactId>
</dependency>
- <dependency>
- <groupId>org.apache.dubbo</groupId>
- <artifactId>dubbo-metadata-report-api</artifactId>
- </dependency>
+ <!--<dependency>-->
+ <!--<groupId>org.apache.dubbo</groupId>-->
+ <!--<artifactId>dubbo-metadata-report-api</artifactId>-->
+ <!--</dependency>-->
<dependency>
<groupId>org.apache.curator</groupId>
@@ -150,4 +150,4 @@
</build>
-</project>
\ No newline at end of file
+</project>
diff --git a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceTestController.java b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceTestController.java
index 3ded7c2..a91b49e 100644
--- a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceTestController.java
+++ b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/controller/ServiceTestController.java
@@ -14,7 +14,7 @@ public class ServiceTestController {
@RequestMapping(method = RequestMethod.POST)
public Object test(@PathVariable String env, @RequestBody ServiceTestDTO serviceTestDTO) {
- return genericService.invoke(serviceTestDTO.getService(), serviceTestDTO.getMethod(), serviceTestDTO.getTypes(), null);
+ return genericService.invoke(serviceTestDTO.getService(), serviceTestDTO.getMethod(), serviceTestDTO.getTypes(), serviceTestDTO.getParams());
// return null;
}
}
diff --git a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/model/dto/ServiceTestDTO.java b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/model/dto/ServiceTestDTO.java
index 7934e7c..3979e78 100644
--- a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/model/dto/ServiceTestDTO.java
+++ b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/model/dto/ServiceTestDTO.java
@@ -4,7 +4,7 @@ public class ServiceTestDTO {
private String service;
private String method;
private String[] types;
- private String params;
+ private Object[] params;
public String getService() {
return service;
@@ -30,11 +30,11 @@ public class ServiceTestDTO {
this.types = types;
}
- public String getParams() {
+ public Object[] getParams() {
return params;
}
- public void setParams(String params) {
+ public void setParams(Object[] params) {
this.params = params;
}
}
diff --git a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/service/impl/GenericServiceImpl.java b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/service/impl/GenericServiceImpl.java
index 6b6e748..469ec9e 100644
--- a/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/service/impl/GenericServiceImpl.java
+++ b/dubbo-admin-backend/src/main/java/org/apache/dubbo/admin/service/impl/GenericServiceImpl.java
@@ -37,6 +37,14 @@ public class GenericServiceImpl {
reference.setInterface(service);
GenericService genericService = reference.get();
- return genericService.$invoke(method, parameterTypes, params);
+ Object result = genericService.$invoke(method, parameterTypes, params);
+ System.out.println(result);
+ return result;
+ }
+
+ public static void main(String[] args) {
+ GenericServiceImpl genericService = new GenericServiceImpl();
+ genericService.init();
+ genericService.invoke("org.apache.dubbo.demo.api.DemoService", "sayHello", new String[]{"java.lang.String"}, new Object[]{"hello"});
}
}
diff --git a/dubbo-admin-frontend/src/components/ServiceTest.vue b/dubbo-admin-frontend/src/components/ServiceTest.vue
index b1f05b2..64a5a02 100644
--- a/dubbo-admin-frontend/src/components/ServiceTest.vue
+++ b/dubbo-admin-frontend/src/components/ServiceTest.vue
@@ -18,7 +18,7 @@
<v-container grid-list-xl fluid>
<v-layout row wrap>
<v-flex xs12>
- <search v-model="filter" label="Search by service name" :submit="search"></search>
+ <search id="serviceSearch" v-model="filter" label="Search by service name" :submit="search"></search>
</v-flex>
<v-flex xs12>
<h3>Methods</h3>
@@ -80,7 +80,7 @@
name: 'ServiceTest',
data () {
return {
- filter: 'org.apache.dubbo.demo.api.DemoService',
+ filter: '',
headers: [
{
text: 'Method Name',
@@ -115,8 +115,11 @@
},
methods: {
search () {
- if (this.filter == null) {
- this.filter = ''
+ if (!this.filter) {
+ this.filter = document.querySelector('#serviceSearch').value.trim()
+ if (!this.filter) {
+ return
+ }
}
this.$router.push({
path: 'test',
@@ -147,7 +150,7 @@
service: this.service.metadata.canonicalName,
method: this.modal.method,
types: this.modal.types,
- params: JSON.stringify(this.modal.json)
+ params: this.modal.json
}).then(response => {
console.log(response)
})
@@ -162,6 +165,19 @@
}
}
},
+ mounted: function () {
+ let query = this.$route.query
+ let filter = null
+ Object.keys(query).forEach(function (key) {
+ if (key === 'service') {
+ filter = query[key]
+ }
+ })
+ if (filter !== null) {
+ this.filter = filter
+ this.search()
+ }
+ },
components: {
JsonEditor,
Search
diff --git a/dubbo-admin-frontend/src/components/public/JsonEditor.vue b/dubbo-admin-frontend/src/components/public/JsonEditor.vue
index c4cbbf5..82e4d35 100644
--- a/dubbo-admin-frontend/src/components/public/JsonEditor.vue
+++ b/dubbo-admin-frontend/src/components/public/JsonEditor.vue
@@ -25,7 +25,7 @@
export default {
name: 'json-editor',
props: {
- value: Object,
+ value: Array,
mode: {
type: String,
default: 'tree'