rokaye commented on issue #15641:
URL: https://github.com/apache/dubbo/issues/15641#issuecomment-3696322279

   ```markdown
   # Environment and Dependencies
   
   - **JDK**: 21
   - **Dubbo**: 3.3.6
   - **Spring Boot**: 3.5.8
   
   ### Maven Dependencies
   
   ```xml
   <dependency>
       <groupId>org.apache.dubbo</groupId>
       <artifactId>dubbo-spring-boot-starter</artifactId>
   </dependency>
   <dependency>
       <groupId>org.apache.dubbo</groupId>
       <artifactId>dubbo-zookeeper-curator5-spring-boot-starter</artifactId>
   </dependency>
   ```
   
   # Proto File with Different `package` and `java_package`
   
   ```proto
   syntax = "proto3";
   
   option java_multiple_files = false;
   option java_package = "com.ec.mkt.common.grpc.server.tridemo";
   
   package demo;
   
   service DemoService {
     rpc SayHello (HelloRequest) returns (HelloReply) {}
   }
   
   message HelloRequest {
     string name = 1;
   }
   
   message HelloReply {
     string message = 1;
   }
   ```
   
   ## Compiled Code
   
   ```java
   public interface DemoService extends org.apache.dubbo.rpc.model.DubboStub {
   
       String JAVA_SERVICE_NAME = 
"com.ec.mkt.common.grpc.server.tridemo.DemoService";
       String SERVICE_NAME = "demo.DemoService";
   
       com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloReply 
sayHello(com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloRequest request);
   
       
CompletableFuture<com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloReply> 
sayHelloAsync(com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloRequest 
request);
   }
   ```
   
   ## Debugging
   
   ```shell
   grpcurl -plaintext \
     -proto greeter.proto \
     -d '{"name": "Dubbo Triple"}' \
     10.0.108.20:19132 \
     demo.DemoService/SayHello
   ```
   
   **ERROR**:
   - Code: Unimplemented
   - Message: Invoker for gRPC not found
   
   ```shell
   grpcurl -plaintext \
     -proto greeter.proto \
     -d '{"name": "Dubbo Triple"}' \
     10.0.108.20:19132 \
     com.ec.mkt.common.grpc.server.tridemo.DemoService:1.0.0/SayHello
   ```
   
   **Error**:
   - Error invoking method 
"com.ec.mkt.common.grpc.server.tridemo.DemoService:1.0.0/SayHello": target 
server does not expose service 
"com.ec.mkt.common.grpc.server.tridemo.DemoService:1.0.0"
   
   ---
   
   # Proto File with Same `package` and `java_package`
   
   ```proto
   syntax = "proto3";
   
   option java_multiple_files = false;
   option java_package = "com.ec.mkt.common.grpc.server.tridemo";
   
   package com.ec.mkt.common.grpc.server.tridemo;
   
   service DemoService {
     rpc SayHello (HelloRequest) returns (HelloReply) {}
   }
   
   message HelloRequest {
     string name = 1;
   }
   
   message HelloReply {
     string message = 1;
   }
   ```
   
   ## Compiled Code
   
   ```java
   public interface DemoService extends org.apache.dubbo.rpc.model.DubboStub {
   
       String JAVA_SERVICE_NAME = 
"com.ec.mkt.common.grpc.server.tridemo.DemoService";
       String SERVICE_NAME = 
"com.ec.mkt.common.grpc.server.tridemo.DemoService";
   
       com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloReply 
sayHello(com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloRequest request);
   
       
CompletableFuture<com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloReply> 
sayHelloAsync(com.ec.mkt.common.grpc.server.tridemo.Greeter.HelloRequest 
request);
   }
   ```
   
   ## Debugging
   
   ```shell
   grpcurl -plaintext \
     -proto greeter.proto \
     -d '{"name": "Dubbo Triple"}' \
     10.0.108.20:19132 \
     demo.DemoService/SayHello
   ```
   
   **Error**:
   - Error invoking method "demo.DemoService/SayHello": target server does not 
expose service "demo.DemoService"
   
   ```shell
   grpcurl -plaintext \
     -proto greeter.proto \
     -d '{"name": "Dubbo Triple"}' \
     10.0.108.20:19132 \
     com.ec.mkt.common.grpc.server.tridemo.DemoService/SayHello
   ```
   
   **Response**:
   ```json
   {
     "message": "Hello, Dubbo Triple!"
   }
   ```
   
   ## Conclusion
   
   It seems necessary for the `package` in the proto file to match the 
`java_package` for successful service exposure and invocation.
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to