This is an automated email from the ASF dual-hosted git repository.
jooks pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git
The following commit(s) were added to refs/heads/master by this push:
new eb71da81b [Task]add sdk apache dubbo integrated test (#3925) (#4173)
eb71da81b is described below
commit eb71da81b622ee52cce6b73358dc935d446cae19
Author: mahaitao <[email protected]>
AuthorDate: Sat Nov 12 21:26:51 2022 +0800
[Task]add sdk apache dubbo integrated test (#3925) (#4173)
* feat:add sdk apache dubbo example integrated test
* feat:add HttpHelper method
* feat:rename docker image name
* feat:fix
* feat:fix
* feat:fix
* feat:fix
* feat:add health endpoint
* feat:fix
* feat:fix
* feat:fix
* feat:fix
* feat:remove blank
* feat:fix
* feat:fix
* feat:fix
* feat:fix
* feat:fix
* feat:fix
Co-authored-by: mahaitao617 <[email protected]>
Co-authored-by: mahaitao617 <[email protected]>
---
.github/workflows/integrated-test.yml | 1 +
.../shenyu-examples-sdk-dubbo/pom.xml | 5 -
.../pom.xml | 5 +
.../ShenyuSdkApacheDubboExampleApplication.java | 2 +-
.../consumer/api/ShenyuApacheDubboClientApi.java | 2 +-
.../ShenyuApacheDubboSdkExampleController.java | 2 +-
.../src/main/resources/application.yml | 6 +-
.../Dockerfile | 1 +
.../pom.xml | 17 ---
.../src/main/resources/application.yml | 27 ++++
.../src/main/resources/shenyu.xml | 59 ++++++++
.../src/main/resources/spring-dubbo.xml | 36 +++++
shenyu-integrated-test/pom.xml | 1 +
.../integratedtest/common/helper/HttpHelper.java | 2 +-
.../Dockerfile | 4 +-
.../docker-compose.yml | 111 +++++++++++++++
.../pom.xml | 100 +++++++++-----
.../script/healthcheck.sh | 36 +++++
.../script/services.list | 17 +--
.../dubbo/SdkApacheDubboIntegratedBootstrap.java | 14 +-
.../src/main/resources/application.yml | 152 +++++++++++++++++++++
.../test/alibaba/dubbo/ApacheDubboPluginTest.java | 46 +++++++
22 files changed, 559 insertions(+), 87 deletions(-)
diff --git a/.github/workflows/integrated-test.yml
b/.github/workflows/integrated-test.yml
index 38f9637c7..56f2e2dba 100644
--- a/.github/workflows/integrated-test.yml
+++ b/.github/workflows/integrated-test.yml
@@ -36,6 +36,7 @@ jobs:
- shenyu-integrated-test-sofa
- shenyu-integrated-test-websocket
- shenyu-integrated-test-combination
+ - shenyu-integrated-test-sdk-apache-dubbo
runs-on: ubuntu-latest
if: (github.repository == 'apache/shenyu')
steps:
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/pom.xml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/pom.xml
index 31d9d10e8..20cac6bbc 100644
--- a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/pom.xml
+++ b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/pom.xml
@@ -40,11 +40,6 @@
<artifactId>shenyu-examples-common</artifactId>
<version>${project.version}</version>
</dependency>
-<!-- <dependency>-->
-<!-- <groupId>org.apache.shenyu</groupId>-->
-<!-- <artifactId>shenyu-examples-dubbo-api</artifactId>-->
-<!-- <version>${project.version}</version>-->
-<!-- </dependency>-->
</dependencies>
</dependencyManagement>
</project>
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
index b4a563012..2b9653168 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
@@ -38,6 +38,11 @@
<version>${project.version}</version>
</dependency>
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-actuator</artifactId>
+ </dependency>
+
<dependency>
<groupId>org.apache.shenyu</groupId>
<artifactId>shenyu-sdk-httpclient</artifactId>
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
index 4d5827bb2..f56527d66 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
@@ -25,7 +25,7 @@ import
org.springframework.boot.autoconfigure.SpringBootApplication;
* ShenyuSdkApacheDubboExampleApplication.
*/
@SpringBootApplication
-@EnableShenyuClients(basePackages =
"org.apache.shenyu.examples.sdk.apache.dubbo.api")
+@EnableShenyuClients(basePackages =
"org.apache.shenyu.examples.sdk.apache.dubbo.consumer.api")
public class ShenyuSdkApacheDubboExampleApplication {
/**
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
index 037ef0781..e72de45b4 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/api/ShenyuApacheDubboClientApi.java
@@ -22,7 +22,7 @@ import org.apache.shenyu.sdk.spring.ShenyuClient;
import org.springframework.web.bind.annotation.GetMapping;
/**
- * ShenyuHttpClientApi.
+ * ShenyuApacheDubboClientApi.
*/
@ShenyuClient(contextId = "shenyu-gateway", name = "ShenyuSdkApiName")
public interface ShenyuApacheDubboClientApi {
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
index 8ae79840e..d0e5450d8 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/controller/ShenyuApacheDubboSdkExampleController.java
@@ -37,7 +37,7 @@ public class ShenyuApacheDubboSdkExampleController {
* findAll.
* @return SdkTestDto
*/
- @GetMapping("sdk/dubbo/findAll")
+ @GetMapping("/sdk/dubbo/findAll")
public DubboTest findAll() {
return shenyuApacheDubboClientApi.findAll();
}
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/resources/application.yml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/resources/application.yml
index 404c6aeda..f9f08ad0e 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/resources/application.yml
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/resources/application.yml
@@ -30,7 +30,7 @@ shenyu:
props:
contextPath: /http
appName: http
- # port: 8189
+
sdk:
enabled: true
register-type: zookeeper #local #etcd #nacos #consul
@@ -41,6 +41,10 @@ spring:
multipart:
max-file-size: 100MB
max-request-size: 100MB
+management:
+ endpoint:
+ health:
+ enabled: true
logging:
level:
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
index 6d2a66a1d..60eda0c10 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
@@ -25,5 +25,6 @@ ADD target/${APP_NAME}.jar ${LOCAL_PATH}
WORKDIR ${LOCAL_PATH}
EXPOSE 8011
+EXPOSE 20888
CMD java -jar ${APP_NAME}.jar
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/pom.xml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/pom.xml
index ab15fc11c..52b62658e 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/pom.xml
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/pom.xml
@@ -40,18 +40,6 @@
<version>${project.version}</version>
</dependency>
- <!--shenyu consul register center -->
- <!--<dependency>
- <groupId>org.springframework.cloud</groupId>
- <artifactId>spring-cloud-starter-consul-discovery</artifactId>
- <version>2.2.6.RELEASE</version>
- </dependency>-->
-
-<!-- <dependency>-->
-<!-- <groupId>org.apache.shenyu</groupId>-->
-<!-- <artifactId>shenyu-examples-dubbo-api</artifactId>-->
-<!-- </dependency>-->
-
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
@@ -134,11 +122,6 @@
</exclusion>
</exclusions>
</dependency>
-<!-- <dependency>-->
-<!-- <groupId>org.apache.shenyu</groupId>-->
-<!-- <artifactId>shenyu-examples-dubbo-api</artifactId>-->
-<!-- <version>2.5.1-SNAPSHOT</version>-->
-<!-- </dependency>-->
</dependencies>
<build>
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/application.yml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/application.yml
new file mode 100644
index 000000000..3b6672249
--- /dev/null
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/application.yml
@@ -0,0 +1,27 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+server:
+ port: 8011
+ address: 0.0.0.0
+ servlet:
+ context-path: /
+spring:
+ main:
+ allow-bean-definition-overriding: true
+dubbo:
+ registry:
+ address: zookeeper://localhost:2181
+ port: 20888
\ No newline at end of file
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/shenyu.xml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/shenyu.xml
new file mode 100644
index 000000000..0dbf332ef
--- /dev/null
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/shenyu.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one or more
+ ~ contributor license agreements. See the NOTICE file distributed with
+ ~ this work for additional information regarding copyright ownership.
+ ~ The ASF licenses this file to You under the Apache License, Version 2.0
+ ~ (the "License"); you may not use this file except in compliance with
+ ~ the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
+ <bean id = "apacheDubboServiceBeanListener"
class="org.apache.shenyu.client.apache.dubbo.ApacheDubboServiceBeanListener">
+ <constructor-arg ref="clientPropertiesConfig"/>
+ <constructor-arg ref="clientRegisterRepository"/>
+ </bean>
+
+ <!-- conifig ShenyuRegisterCenterConfig according to your registerType -->
+ <bean id="shenyuRegisterCenterConfig"
class="org.apache.shenyu.register.common.config.ShenyuRegisterCenterConfig">
+ <property name="registerType" value="http"/>
+ <property name="serverLists" value="http://localhost:9095"/>
+ <property name="props">
+ <props>
+ <prop key="username">admin</prop>
+ <prop key="password">123456</prop>
+ </props>
+ </property>
+ </bean>
+
+ <!-- ClientPropertiesConfig -->
+ <bean id="clientPropertiesConfig"
+
class="org.apache.shenyu.register.common.config.ShenyuClientConfig.ClientPropertiesConfig">
+ <property name="props">
+ <map>
+ <entry key="contextPath" value="/dubbo"/>
+ <entry key="appName" value="dubbo"/>
+ </map>
+ </property>
+ </bean>
+
+ <!-- for other kind of register method, please use related
ShenyuClientRegisterRepository -->
+ <bean id="clientRegisterRepository"
class="org.apache.shenyu.register.client.http.HttpClientRegisterRepository">
+ <constructor-arg ref="shenyuRegisterCenterConfig"/>
+ </bean>
+
+ <bean id="shenyuClientShutdownHook"
class="org.apache.shenyu.client.core.shutdown.ShenyuClientShutdownHook">
+ <constructor-arg ref="shenyuRegisterCenterConfig"/>
+ <constructor-arg ref="clientRegisterRepository"/>
+ </bean>
+</beans>
\ No newline at end of file
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/spring-dubbo.xml
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/spring-dubbo.xml
new file mode 100644
index 000000000..b187dadf4
--- /dev/null
+++
b/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/src/main/resources/spring-dubbo.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one or more
+ ~ contributor license agreements. See the NOTICE file distributed with
+ ~ this work for additional information regarding copyright ownership.
+ ~ The ASF licenses this file to You under the Apache License, Version 2.0
+ ~ (the "License"); you may not use this file except in compliance with
+ ~ the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ -->
+
+<beans xmlns="http://www.springframework.org/schema/beans"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
+ xsi:schemaLocation="http://www.springframework.org/schema/beans
+ http://www.springframework.org/schema/beans/spring-beans.xsd
+ http://code.alibabatech.com/schema/dubbo
+ https://code.alibabatech.com/schema/dubbo/dubbo.xsd">
+
+ <dubbo:application name="test-dubbo-service"/>
+ <dubbo:registry address="${dubbo.registry.address}"/>
+ <dubbo:protocol name="dubbo" port="${dubbo.registry.port}"/>
+
+ <dubbo:service timeout="10000"
interface="org.apache.shenyu.examples.dubbo.api.service.DubboTestService"
ref="dubboTestService"/>
+ <dubbo:service timeout="10000"
interface="org.apache.shenyu.examples.dubbo.api.service.DubboMultiParamService"
ref="dubboMultiParamService"/>
+ <dubbo:service timeout="10000"
interface="org.apache.shenyu.examples.dubbo.api.service.DubboClassTestService"
ref="dubboClassTestService"/>
+ <dubbo:service timeout="10000"
interface="org.apache.shenyu.examples.dubbo.api.service.DubboClassMultiParamService"
ref="dubboClassMultiParamService"/>
+
+</beans>
diff --git a/shenyu-integrated-test/pom.xml b/shenyu-integrated-test/pom.xml
index 1016901de..3161f9802 100644
--- a/shenyu-integrated-test/pom.xml
+++ b/shenyu-integrated-test/pom.xml
@@ -40,6 +40,7 @@
<module>shenyu-integrated-test-sofa</module>
<module>shenyu-integrated-test-websocket</module>
<module>shenyu-integrated-test-combination</module>
+ <module>shenyu-integrated-test-sdk-apache-dubbo</module>
</modules>
<properties>
diff --git
a/shenyu-integrated-test/shenyu-integrated-test-common/src/main/java/org/apache/shenyu/integratedtest/common/helper/HttpHelper.java
b/shenyu-integrated-test/shenyu-integrated-test-common/src/main/java/org/apache/shenyu/integratedtest/common/helper/HttpHelper.java
index a82543eb5..68d77d8c2 100644
---
a/shenyu-integrated-test/shenyu-integrated-test-common/src/main/java/org/apache/shenyu/integratedtest/common/helper/HttpHelper.java
+++
b/shenyu-integrated-test/shenyu-integrated-test-common/src/main/java/org/apache/shenyu/integratedtest/common/helper/HttpHelper.java
@@ -58,7 +58,7 @@ public class HttpHelper {
private static final Gson GSON = new Gson();
private final OkHttpClient client = new OkHttpClient.Builder().build();
-
+
private final String localKey = "123456";
/**
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/Dockerfile
similarity index 93%
copy from
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
copy to
shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/Dockerfile
index 6d2a66a1d..ac95c5b52 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
+++ b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/Dockerfile
@@ -16,7 +16,7 @@
FROM openjdk:8-jre-alpine
-ENV APP_NAME shenyu-examples-sdk-apache-dubbo-provider
+ENV APP_NAME shenyu-integrated-test-sdk-apache-dubbo
ENV LOCAL_PATH /opt/${APP_NAME}
RUN mkdir -p ${LOCAL_PATH}
@@ -24,6 +24,6 @@ RUN mkdir -p ${LOCAL_PATH}
ADD target/${APP_NAME}.jar ${LOCAL_PATH}
WORKDIR ${LOCAL_PATH}
-EXPOSE 8011
+EXPOSE 9195
CMD java -jar ${APP_NAME}.jar
diff --git
a/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/docker-compose.yml
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/docker-compose.yml
new file mode 100644
index 000000000..31445e88f
--- /dev/null
+++
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/docker-compose.yml
@@ -0,0 +1,111 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+version: "3.9"
+services:
+ shenyu-zk:
+ container_name: shenyu-zk
+ image: zookeeper:3.5
+ restart: always
+ networks:
+ - shenyu
+ ports:
+ - "2181:2181"
+
+ shenyu-admin:
+ image: apache/shenyu-admin:latest
+ container_name: shenyu-admin
+ restart: always
+ networks:
+ - shenyu
+ ports:
+ - "9095:9095"
+ environment:
+ - SPRING_PROFILES_ACTIVE=h2
+ - shenyu.database.init_script=sql-script/h2/schema.sql
+ healthcheck:
+ test: ["CMD-SHELL", "wget -q -O -
http://shenyu-admin:9095/actuator/health | grep UP || exit 1"]
+ timeout: 2s
+ retries: 3
+ start_period: 5s
+ shenyu-examples-sdk-apache-dubbo-provider:
+ deploy:
+ resources:
+ limits:
+ memory: 2048M
+ container_name: shenyu-examples-sdk-apache-dubbo-provider
+ image: shenyu-examples-sdk-apache-dubbo-provider:latest
+ restart: always
+ healthcheck:
+ test: ["CMD-SHELL", "wget -q -O - http://localhost:8011/actuator/health
| grep UP || exit 1"]
+ timeout: 2s
+ retries: 3
+ start_period: 5s
+ ports:
+ - "8011:8011"
+ - "20888:20888"
+ networks:
+ - shenyu
+ environment:
+ - dubbo.registry.address=zookeeper://shenyu-zk:2181
+ - shenyu.register.serverLists=http://shenyu-admin:9095
+
+ shenyu-examples-sdk-apache-dubbo-consumer:
+ deploy:
+ resources:
+ limits:
+ memory: 2048M
+ container_name: shenyu-examples-sdk-apache-dubbo-consumer
+ image: shenyu-examples-sdk-apache-dubbo-consumer:latest
+ restart: always
+ healthcheck:
+ test: ["CMD-SHELL", "wget -q -O - http://localhost:8899/actuator/health
| grep UP || exit 1"]
+ timeout: 2s
+ retries: 3
+ start_period: 5s
+ ports:
+ - "8899:8899"
+ networks:
+ - shenyu
+ environment:
+ - shenyu.register.serverLists=http://shenyu-admin:9095
+
+ shenyu-integrated-test-sdk-apache-dubbo:
+ container_name: shenyu-integrated-test-sdk-apache-dubbo
+ image: apache/shenyu-integrated-test-sdk-apache-dubbo:latest
+ restart: always
+ deploy:
+ resources:
+ limits:
+ memory: 2048M
+ environment:
+ - dubbo.registry.address=zookeeper://shenyu-zk:2181
+ - shenyu.sync.websocket.urls=ws://shenyu-admin:9095/websocket
+ depends_on:
+ shenyu-admin:
+ condition: service_healthy
+ ports:
+ - "9195:9195"
+ healthcheck:
+ test: [ "CMD", "wget", "-q", "-O", "-",
"http://shenyu-integrated-test-sdk-apache-dubbo:9195/actuator/health" ]
+ timeout: 2s
+ retries: 3
+ start_period: 5s
+ networks:
+ - shenyu
+
+networks:
+ shenyu:
+ name: shenyu
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/pom.xml
similarity index 51%
copy from
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
copy to shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/pom.xml
index b4a563012..f06dc788f 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/pom.xml
+++ b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/pom.xml
@@ -18,78 +18,104 @@
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
<parent>
- <artifactId>shenyu-examples-sdk-dubbo</artifactId>
<groupId>org.apache.shenyu</groupId>
+ <artifactId>shenyu-integrated-test</artifactId>
<version>2.5.1-SNAPSHOT</version>
</parent>
- <modelVersion>4.0.0</modelVersion>
- <artifactId>shenyu-examples-sdk-apache-dubbo-consumer</artifactId>
+ <artifactId>shenyu-integrated-test-sdk-apache-dubbo</artifactId>
+ <name>shenyu-integrated-test-sdk-apache-dubbo</name>
<dependencies>
<dependency>
<groupId>org.apache.shenyu</groupId>
- <artifactId>shenyu-sdk-core</artifactId>
+ <artifactId>shenyu-integrated-test-common</artifactId>
+ <version>${project.version}</version>
</dependency>
+
<dependency>
<groupId>org.apache.shenyu</groupId>
- <artifactId>shenyu-examples-dubbo-api</artifactId>
+ <artifactId>shenyu-spring-boot-starter-instance</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.shenyu</groupId>
- <artifactId>shenyu-sdk-httpclient</artifactId>
+ <artifactId>shenyu-spring-boot-starter-gateway</artifactId>
+ <version>${project.version}</version>
</dependency>
<dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-web</artifactId>
+ <groupId>org.apache.shenyu</groupId>
+
<artifactId>shenyu-spring-boot-starter-plugin-apache-dubbo</artifactId>
+ <version>${project.version}</version>
</dependency>
- <!--spring bootstrap-->
<dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter</artifactId>
+ <groupId>org.apache.dubbo</groupId>
+ <artifactId>dubbo</artifactId>
+ <version>3.1.1</version>
</dependency>
<dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-web</artifactId>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-x-discovery</artifactId>
+ <version>5.1.0</version>
</dependency>
-
+ <!-- Dubbo zookeeper registry dependency start -->
<dependency>
- <groupId>org.apache.shenyu</groupId>
- <artifactId>shenyu-spring-boot-starter-sdk</artifactId>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-client</artifactId>
+ <version>4.0.1</version>
+ <exclusions>
+ <exclusion>
+ <artifactId>log4j</artifactId>
+ <groupId>log4j</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-framework</artifactId>
+ <version>4.0.1</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-recipes</artifactId>
+ <version>4.0.1</version>
</dependency>
</dependencies>
-
- <build>
- <finalName>shenyu-examples-sdk-apache-dubbo-consumer</finalName>
- <plugins>
- <plugin>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-maven-plugin</artifactId>
- <configuration>
-
<mainClass>org.apache.shenyu.examples.sdk.apache.dubbo.consumer.ShenyuSdkApacheDubboExampleApplication</mainClass>
- <executable>true</executable>
- </configuration>
- </plugin>
- </plugins>
- </build>
+
<profiles>
<profile>
- <id>example</id>
+ <id>it</id>
<properties>
-
<docker.buildArg.APP_NAME>shenyu-examples-sdk-apache-dubbo-consumer</docker.buildArg.APP_NAME>
-
<docker.image.tag.repo>shenyu-examples-sdk-apache-dubbo-consumer</docker.image.tag.repo>
+
<docker.buildArg.APP_NAME>shenyu-integrated-test-sdk-apache-dubbo</docker.buildArg.APP_NAME>
+
<docker.image.tag.repo>apache/shenyu-integrated-test-sdk-apache-dubbo</docker.image.tag.repo>
<docker.image.tag.tagName>latest</docker.image.tag.tagName>
</properties>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
<build>
+ <finalName>shenyu-integrated-test-sdk-apache-dubbo</finalName>
<plugins>
+ <plugin>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-maven-plugin</artifactId>
+ <version>${spring-boot.version}</version>
+ <executions>
+ <execution>
+ <phase>package</phase>
+ <goals>
+ <goal>repackage</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+
<mainClass>org.apache.shenyu.integrated.test.apache.dubbo.SdkApacheDubboIntegratedBootstrap
+ </mainClass>
+ <executable>true</executable>
+ </configuration>
+ </plugin>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
@@ -97,7 +123,7 @@
<configuration>
<images>
<image>
-
<name>shenyu-examples-sdk-apache-dubbo-consumer</name>
+
<name>apache/shenyu-integrated-test-sdk-apache-dubbo</name>
<build>
<contextDir>${project.basedir}</contextDir>
</build>
diff --git
a/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/script/healthcheck.sh
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/script/healthcheck.sh
new file mode 100644
index 000000000..22a76034a
--- /dev/null
+++
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/script/healthcheck.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+PRGDIR=`dirname "$0"`
+for service in `grep -v -E "^$|^#" ${PRGDIR}/services.list`
+do
+ for loop in `seq 1 30`
+ do
+ status=`curl -o /dev/null -s -w %{http_code} $service`
+ echo -e "curl $service response $status"
+
+ if [ $status -eq 200 ]; then
+ break
+ fi
+
+ sleep 2
+ done
+done
+
+sleep 3
+echo -e "\n-------------------"
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/script/services.list
similarity index 75%
copy from
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
copy to
shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/script/services.list
index 6d2a66a1d..19a97d90c 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-provider/Dockerfile
+++
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/script/services.list
@@ -14,16 +14,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-FROM openjdk:8-jre-alpine
-
-ENV APP_NAME shenyu-examples-sdk-apache-dubbo-provider
-ENV LOCAL_PATH /opt/${APP_NAME}
-
-RUN mkdir -p ${LOCAL_PATH}
-
-ADD target/${APP_NAME}.jar ${LOCAL_PATH}
-
-WORKDIR ${LOCAL_PATH}
-EXPOSE 8011
-
-CMD java -jar ${APP_NAME}.jar
+http://localhost:9095/actuator/health
+http://localhost:8011/actuator/health
+http://localhost:9195/actuator/health
+http://localhost:8899/actuator/health
diff --git
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/main/java/org/apache/shenyu/integrated/test/apache/dubbo/SdkApacheDubboIntegratedBootstrap.java
similarity index 71%
copy from
shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
copy to
shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/main/java/org/apache/shenyu/integrated/test/apache/dubbo/SdkApacheDubboIntegratedBootstrap.java
index 4d5827bb2..1fdf8377f 100644
---
a/shenyu-examples/shenyu-examples-sdk/shenyu-examples-sdk-dubbo/shenyu-examples-sdk-apache-dubbo-consumer/src/main/java/org/apache/shenyu/examples/sdk/apache/dubbo/consumer/ShenyuSdkApacheDubboExampleApplication.java
+++
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/main/java/org/apache/shenyu/integrated/test/apache/dubbo/SdkApacheDubboIntegratedBootstrap.java
@@ -15,25 +15,23 @@
* limitations under the License.
*/
-package org.apache.shenyu.examples.sdk.apache.dubbo.consumer;
+package org.apache.shenyu.integrated.test.apache.dubbo;
-import org.apache.shenyu.sdk.spring.EnableShenyuClients;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
- * ShenyuSdkApacheDubboExampleApplication.
+ * The type sdk Alibaba dubbo integrated bootstrap.
*/
@SpringBootApplication
-@EnableShenyuClients(basePackages =
"org.apache.shenyu.examples.sdk.apache.dubbo.api")
-public class ShenyuSdkApacheDubboExampleApplication {
+public class SdkApacheDubboIntegratedBootstrap {
/**
- * main.
+ * The entry point of application.
*
- * @param args args
+ * @param args the input arguments
*/
public static void main(final String[] args) {
- SpringApplication.run(ShenyuSdkApacheDubboExampleApplication.class,
args);
+ SpringApplication.run(SdkApacheDubboIntegratedBootstrap.class);
}
}
diff --git
a/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/main/resources/application.yml
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/main/resources/application.yml
new file mode 100644
index 000000000..ea8e73bba
--- /dev/null
+++
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/main/resources/application.yml
@@ -0,0 +1,152 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+server:
+ port: 9195
+ address: 0.0.0.0
+
+spring:
+ main:
+ allow-bean-definition-overriding: true
+ application:
+ name: shenyu-bootstrap
+
+management:
+ health:
+ defaults:
+ enabled: false
+
+shenyu:
+ matchCache:
+ selectorEnabled: false
+ ruleEnabled: true
+ maxSelectorFreeMemory: 256 # 256MB
+ maxRuleFreeMemory: 256 # 256MB
+ netty:
+ http:
+ # set to false, user can custom the netty tcp server config.
+ webServerFactoryEnabled: true
+ selectCount: 1
+ workerCount: 4
+ accessLog: false
+ serverSocketChannel:
+ soRcvBuf: 87380
+ soBackLog: 128
+ soReuseAddr: false
+ connectTimeoutMillis: 10000
+ writeBufferHighWaterMark: 65536
+ writeBufferLowWaterMark: 32768
+ writeSpinCount: 16
+ autoRead: false
+ allocType: "pooled"
+ messageSizeEstimator: 8
+ singleEventExecutorPerGroup: true
+ socketChannel:
+ soKeepAlive: false
+ soReuseAddr: false
+ soLinger: -1
+ tcpNoDelay: true
+ soRcvBuf: 87380
+ soSndBuf: 16384
+ ipTos: 0
+ allowHalfClosure: false
+ connectTimeoutMillis: 10000
+ writeBufferHighWaterMark: 65536
+ writeBufferLowWaterMark: 32768
+ writeSpinCount: 16
+ autoRead: false
+ allocType: "pooled"
+ messageSizeEstimator: 8
+ singleEventExecutorPerGroup: true
+ register:
+ enabled: true
+ registerType: zookeeper #etcd #consul
+ serverLists: localhost:2181 #http://localhost:2379 #localhost:8848
+ props:
+ cross:
+ enabled: true
+ allowedHeaders:
+ allowedMethods: "*"
+ allowedAnyOrigin: true # the same of Access-Control-Allow-Origin: "*"
+ allowedExpose: ""
+ maxAge: "18000"
+ allowCredentials: true
+
+ switchConfig:
+ local: true
+ file:
+ enabled: true
+ maxSize : 10
+ sync:
+ websocket:
+ urls: ws://localhost:9095/websocket
+ allowOrigin: ws://localhost:9195
+ exclude:
+ enabled: true
+ paths:
+ - /favicon.ico
+ - /actuator/health
+ fallback:
+ enabled: false
+ paths:
+ - /fallback/hystrix
+ - /fallback/resilience4j
+ health:
+ enabled: false
+ paths:
+ - /actuator/health
+ - /health_check
+ extPlugin:
+ path:
+ enabled: true
+ threads: 1
+ scheduleTime: 300
+ scheduleDelay: 30
+ scheduler:
+ enabled: false
+ type: fixed
+ threads: 16
+ upstreamCheck:
+ enabled: false
+ timeout: 3000
+ healthyThreshold: 1
+ unhealthyThreshold: 1
+ interval: 5000
+ printEnabled: true
+ printInterval: 60000
+ ribbon:
+ serverListRefreshInterval: 10000
+ metrics:
+ enabled: false
+ name : prometheus
+ host: 127.0.0.1
+ port: 8090
+ jmxConfig:
+ props:
+ jvm_enabled: true
+ # plugins:
+ # rate-limiter.enabled: false
+ local:
+ enabled: false
+ sha512Key:
"BA3253876AED6BC22D4A6FF53D8406C6AD864195ED144AB5C87621B6C233B548BAEAE6956DF346EC8C17F5EA10F35EE3CBC514797ED7DDD3145464E2A0BAB413"
+
+logging:
+ level:
+ root: info
+ org.springframework.boot: info
+ org.apache.ibatis: info
+ org.apache.shenyu.bonuspoint: info
+ org.apache.shenyu.lottery: info
+ org.apache.shenyu: info
diff --git
a/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/test/java/org/apache/shenyu/integrated/test/alibaba/dubbo/ApacheDubboPluginTest.java
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/test/java/org/apache/shenyu/integrated/test/alibaba/dubbo/ApacheDubboPluginTest.java
new file mode 100644
index 000000000..b9408c2ec
--- /dev/null
+++
b/shenyu-integrated-test/shenyu-integrated-test-sdk-apache-dubbo/src/test/java/org/apache/shenyu/integrated/test/alibaba/dubbo/ApacheDubboPluginTest.java
@@ -0,0 +1,46 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.shenyu.integrated.test.alibaba.dubbo;
+
+import java.io.IOException;
+import org.apache.shenyu.common.enums.PluginEnum;
+import org.apache.shenyu.integratedtest.common.AbstractPluginDataInit;
+import org.apache.shenyu.integratedtest.common.dto.DubboTest;
+import org.apache.shenyu.integratedtest.common.helper.HttpHelper;
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.Test;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.is;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+public class ApacheDubboPluginTest extends AbstractPluginDataInit {
+
+ @BeforeAll
+ public static void setup() throws IOException {
+ String pluginResult = initPlugin(PluginEnum.DUBBO.getName(),
"{\"register\":\"zookeeper://shenyu-zk:2181\"}");
+ assertThat(pluginResult, is("success"));
+ }
+
+ @Test
+ public void testFindAll() throws IOException {
+ DubboTest dubboTest =
HttpHelper.INSTANCE.getHttpService("http://localhost:8899/sdk/dubbo/findAll",
null, DubboTest.class);
+ assertEquals("hello world shenyu Apache, findAll",
dubboTest.getName());
+ }
+
+}