This is an automated email from the ASF dual-hosted git repository.

alexstocks pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-go-samples.git


The following commit(s) were added to refs/heads/master by this push:
     new a08823b  Fix tpc triple hessian2 (#304)
a08823b is described below

commit a08823b310e5c043670050116ca93bd08a4001aa
Author: Yuecai Liu <[email protected]>
AuthorDate: Tue Nov 30 13:24:43 2021 +0800

    Fix tpc triple hessian2 (#304)
    
    * make go and java communicated
    
    * change dubbo version to 3.0.3
    
    * delete unsed code
    
    * remove unused code
    
    Co-authored-by: liuyuecai <[email protected]>
---
 .../hessian2/go-server/cmd/complex_service.go      |  2 +-
 rpc/triple/hessian2/java-client/pom.xml            |  2 +-
 rpc/triple/hessian2/java-client/run.sh             |  0
 .../com/apache/dubbo/sample/basic/ApiConsumer.java | 56 ++++++++++------------
 .../com/apache/dubbo/sample/basic/ComplexData.java | 22 ++++++++-
 .../com/apache/dubbo/sample/basic/IGreeter.java    |  3 +-
 rpc/triple/hessian2/java-server/pom.xml            |  2 +-
 .../com/apache/dubbo/sample/basic/ApiProvider.java | 20 +++++++-
 .../apache/dubbo/sample/basic/ComplexProvider.java |  1 +
 .../dubbo/sample/basic/ComplexProviderImpl.java    |  6 +++
 .../com/apache/dubbo/sample/basic/IGreeter.java    |  3 +-
 .../{IGreeter1Impl.java => IGreeterImpl.java}      | 13 +++--
 12 files changed, 81 insertions(+), 49 deletions(-)

diff --git a/rpc/triple/hessian2/go-server/cmd/complex_service.go 
b/rpc/triple/hessian2/go-server/cmd/complex_service.go
index daa6e8d..5fb06e4 100644
--- a/rpc/triple/hessian2/go-server/cmd/complex_service.go
+++ b/rpc/triple/hessian2/go-server/cmd/complex_service.go
@@ -75,7 +75,7 @@ func (u *ComplexData) JavaClassName() string {
 type ComplexProvider struct {
 }
 
-func (u *ComplexProvider) InvokeWithMultiBasicData(ctx context.Context, str 
string, data []byte, num int, boolValue bool) (int, error) {
+func (u *ComplexProvider) InvokeWithMultiBasicData(ctx context.Context, str 
string, data []byte, num int32, boolValue bool) (int32, error) {
        logger.Info("InvokeWithMultiBasicData", str, " ", data, " ", num, " ", 
boolValue)
        return num, nil
 }
diff --git a/rpc/triple/hessian2/java-client/pom.xml 
b/rpc/triple/hessian2/java-client/pom.xml
index aff1e73..5d10a0a 100644
--- a/rpc/triple/hessian2/java-client/pom.xml
+++ b/rpc/triple/hessian2/java-client/pom.xml
@@ -27,7 +27,7 @@
     <properties>
         <source.level>1.8</source.level>
         <target.level>1.8</target.level>
-        <dubbo.version>3.0.2</dubbo.version>
+        <dubbo.version>3.0.3</dubbo.version>
         <junit.version>4.12</junit.version>
         <spring-test.version>4.3.16.RELEASE</spring-test.version>
         <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
diff --git a/rpc/triple/hessian2/java-client/run.sh 
b/rpc/triple/hessian2/java-client/run.sh
old mode 100644
new mode 100755
diff --git 
a/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ApiConsumer.java
 
b/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ApiConsumer.java
index 2dc8cad..a8e54e2 100644
--- 
a/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ApiConsumer.java
+++ 
b/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ApiConsumer.java
@@ -21,13 +21,9 @@ import org.apache.dubbo.common.constants.CommonConstants;
 import org.apache.dubbo.config.ApplicationConfig;
 import org.apache.dubbo.config.ReferenceConfig;
 import org.apache.dubbo.config.RegistryConfig;
-import org.apache.dubbo.sample.hello.Helloworld;
 
 import java.io.IOException;
-import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.List;
-import java.util.concurrent.TimeUnit;
 
 public class ApiConsumer {
     public static void main(String[] args) throws InterruptedException, 
IOException {
@@ -42,38 +38,34 @@ public class ApiConsumer {
         ref.setRegistry(new RegistryConfig("zookeeper://127.0.0.1:2181"));
         final ComplexProvider complexProvider = ref.get();
 
-//        complexProvider.invokeWithEmptyReq();
-//        complexProvider.invokeWithSingleString("single string");
-//        complexProvider.invokeWithMultiString("string1", "string2", 
"string3");
-//        String [] strList = new String []{"first string"," second string"};
-//        complexProvider.invokeWithStringList(strList );
-//       String rsp = complexProvider.invokeWithEmptyReqStringRsp();
-//       System.out.println("get rsp = "+  rsp);
+        complexProvider.invokeWithEmptyReq();
+        complexProvider.invokeWithSingleString("single string");
+        complexProvider.invokeWithMultiString("string1", "string2", "string3");
+        String[] strList = new String[]{"first string", " second string"};
+        complexProvider.invokeWithStringList(strList);
+        String rsp = complexProvider.invokeWithEmptyReqStringRsp();
+        System.out.println("get rsp = " + rsp);
 
-
-       ComplexData cpxData = new ComplexData();
-       cpxData.booleanData = true;
-       cpxData.stringData = "test string";
-       cpxData.byteData =  new byte[] {1, 12, 4, 3, 3,3};
-       cpxData.int16Data =16;
-       cpxData.intData = 32;
-       cpxData.int64Data = 64;
-       cpxData.arrayListData = new String[]{"array1", "array2"};
-//       cpxData.arrayUserData = new User[]{new User(), new User(), new 
User()};
+        ComplexData cpxData = new ComplexData();
+        cpxData.booleanData = true;
+        cpxData.stringData = "test string";
+        cpxData.byteData = new byte[]{1, 12, 4, 3, 3, 3};
+        cpxData.int16Data = 16;
+        cpxData.intData = 32;
+        cpxData.int64Data = 64;
+        cpxData.arrayListData = new String[]{"array1", "array2"};
+        cpxData.arrayUserData = new User[]{new User(), new User(), new User()};
         cpxData.userDefinedData = new User();
         cpxData.userDefinedData.age = 18;
         cpxData.userDefinedData.id = "iojfioj";
-        cpxData.stringStringHashMap = new HashMap<>();
-//        cpxData.stringStringHashMap.put("key1", "value");
-//        cpxData.stringStringHashMap.put("key2", "value");
-//        cpxData.stringUserDefinedPtrMapData = new HashMap<>();
-//        cpxData.stringUserDefinedPtrMapData.put("key1", new User());
-//        cpxData.stringUserDefinedPtrMapData.put("key2", new User());
-
-//        ComplexData response = 
complexProvider.invokeWithComplexReqComplexRspPtr(cpxData);
-//        System.out.println("get complex = "+  response);
+        cpxData.stringUserDefinedPtrMapData = new HashMap<>();
+        cpxData.stringUserDefinedPtrMapData.put("key1", new User());
+        cpxData.stringUserDefinedPtrMapData.put("key2", new User());
 
-        int rsp = complexProvider.invokeWithMultiBasicData("str",new byte[]{1, 
3, 4,6,7}, 32, true);
-        System.out.println("get multi basic rsp = "+  rsp);
+        ComplexData response = 
complexProvider.invokeWithComplexReqComplexRspPtr(cpxData);
+        System.out.println("get complex = " + response);
+        // todo hessian2's bug,not support basic return value yet
+//         int rsp1 = complexProvider.invokeWithMultiBasicData("str", new 
byte[]{1, 3, 4, 44, 7}, 32, true);
+//         System.out.println("get multi basic rsp = " + rsp1);
     }
 }
diff --git 
a/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ComplexData.java
 
b/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ComplexData.java
index c3b51d1..caac37a 100644
--- 
a/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ComplexData.java
+++ 
b/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/ComplexData.java
@@ -1,7 +1,9 @@
 package com.apache.dubbo.sample.basic;
 
 import java.io.Serializable;
+import java.util.Arrays;
 import java.util.HashMap;
+import java.util.StringJoiner;
 
 public class ComplexData implements Serializable {
     boolean booleanData;
@@ -14,8 +16,24 @@ public class ComplexData implements Serializable {
     User userDefinedData;
     byte [] byteData;
     HashMap<String, String> stringStringHashMap;
-//    HashMap<String, User> stringUserDefinedPtrMapData;
+    HashMap<String, User> stringUserDefinedPtrMapData;
     String[] arrayListData;
-//    User[] arrayUserData;
+    User[] arrayUserData;
 
+    @Override
+    public String toString() {
+        return new StringJoiner(", ", ComplexData.class.getSimpleName() + "[", 
"]")
+                .add("booleanData=" + booleanData)
+                .add("stringData='" + stringData + "'")
+                .add("int16Data=" + int16Data)
+                .add("intData=" + intData)
+                .add("int64Data=" + int64Data)
+                .add("userDefinedData=" + userDefinedData)
+                .add("byteData=" + Arrays.toString(byteData))
+                .add("stringStringHashMap=" + stringStringHashMap)
+                .add("stringUserDefinedPtrMapData=" + 
stringUserDefinedPtrMapData)
+                .add("arrayListData=" + Arrays.toString(arrayListData))
+                .add("arrayUserData=" + Arrays.toString(arrayUserData))
+                .toString();
+    }
 }
diff --git 
a/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
 
b/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
index 1c6f637..324cdee 100644
--- 
a/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
+++ 
b/rpc/triple/hessian2/java-client/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
@@ -25,6 +25,5 @@ public interface IGreeter {
      *  Sends a greeting
      * </pre>
      */
-    User getUser(String request);
-
+    User getUser(User request);
 }
diff --git a/rpc/triple/hessian2/java-server/pom.xml 
b/rpc/triple/hessian2/java-server/pom.xml
index 82f616d..e94289d 100644
--- a/rpc/triple/hessian2/java-server/pom.xml
+++ b/rpc/triple/hessian2/java-server/pom.xml
@@ -29,7 +29,7 @@
     <properties>
         <source.level>1.8</source.level>
         <target.level>1.8</target.level>
-        <dubbo.version>3.0.0-ding-SNAPSHOT</dubbo.version>
+        <dubbo.version>3.0.2</dubbo.version>
         <junit.version>4.12</junit.version>
         <spring-test.version>4.3.16.RELEASE</spring-test.version>
         <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
diff --git 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ApiProvider.java
 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ApiProvider.java
index fcd180c..29a9fed 100644
--- 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ApiProvider.java
+++ 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ApiProvider.java
@@ -22,10 +22,18 @@ import org.apache.dubbo.config.ApplicationConfig;
 import org.apache.dubbo.config.ProtocolConfig;
 import org.apache.dubbo.config.RegistryConfig;
 import org.apache.dubbo.config.ServiceConfig;
+
 import java.util.concurrent.CountDownLatch;
 
 public class ApiProvider {
+    
     public static void main(String[] args) throws InterruptedException {
+        startComplexProvider();
+        startIGreeterService();
+        new CountDownLatch(1).await();
+    }
+
+    public static void startComplexProvider() {
         ServiceConfig<ComplexProvider> service = new ServiceConfig<>();
         service.setInterface(ComplexProvider.class);
         service.setRef(new ComplexProviderImpl());
@@ -34,6 +42,16 @@ public class ApiProvider {
         service.setRegistry(new RegistryConfig("zookeeper://127.0.0.1:2181"));
         service.export();
         System.out.println("dubbo service started");
-        new CountDownLatch(1).await();
+    }
+
+    public static void startIGreeterService() {
+        ServiceConfig<IGreeter> service = new ServiceConfig<>();
+        service.setInterface(IGreeter.class);
+        service.setRef(new IGreeterImpl());
+        service.setProtocol(new ProtocolConfig(CommonConstants.TRIPLE, 50052));
+        service.setApplication(new ApplicationConfig("demo-provider"));
+        service.setRegistry(new RegistryConfig("zookeeper://127.0.0.1:2181"));
+        service.export();
+        System.out.println("dubbo service started");
     }
 }
diff --git 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProvider.java
 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProvider.java
index a1965dd..c486e89 100644
--- 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProvider.java
+++ 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProvider.java
@@ -7,4 +7,5 @@ public interface ComplexProvider {
     void invokeWithMultiString(String str1, String str2, String str3);
     String invokeWithEmptyReqStringRsp ();
     ComplexData invokeWithComplexReqComplexRspPtr(ComplexData complexData);
+    int invokeWithMultiBasicData (String str, byte[]data, int num, boolean 
boolValue);
 }
diff --git 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProviderImpl.java
 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProviderImpl.java
index 79106cd..69e042d 100644
--- 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProviderImpl.java
+++ 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/ComplexProviderImpl.java
@@ -32,4 +32,10 @@ public class ComplexProviderImpl implements ComplexProvider {
         System.out.println("invokeWithComplexReqComplexRspPtr = "+ 
complexData.GetString());
         return complexData;
     }
+
+    @Override
+    public int invokeWithMultiBasicData(String str, byte[] data, int num, 
boolean boolValue) {
+        System.out.println("invokeWithEmptyReq" + str + data + num + 
boolValue);
+        return num;
+    }
 }
diff --git 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
index 3c7b561..0c52dbe 100644
--- 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
+++ 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter.java
@@ -24,6 +24,5 @@ public interface IGreeter {
      *  Sends a greeting
      * </pre>
      */
-    User getUser(String request);
-
+    User getUser(User request);
 }
diff --git 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter1Impl.java
 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeterImpl.java
similarity index 80%
rename from 
rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter1Impl.java
rename to 
rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeterImpl.java
index 62371d8..0721ccd 100644
--- 
a/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeter1Impl.java
+++ 
b/rpc/triple/hessian2/java-server/src/main/java/com/apache/dubbo/sample/basic/IGreeterImpl.java
@@ -18,14 +18,13 @@
 package com.apache.dubbo.sample.basic;
 
 
-public class IGreeter1Impl implements IGreeter {
+public class IGreeterImpl implements IGreeter {
     @Override
-    public User getUser(String request) {
+    public User getUser(User request) {
         System.out.println("receiv: " + request);
-        User usr = new User();
-        usr.age = 19;
-        usr.name = "hello" + request;
-        usr.id = "23";
-        return usr;
+        request.age = 18;
+        request.name = "Hello, " + request.name;
+        request.id = "12345";
+        return request;
     }
 }

Reply via email to