apache / apache/dubbo

Single interface registered incase of Multiple interface implementation to service

Open
#9,458 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
41.6k
Forks
26.4k
Avg merge
15h 13m
Merged PRs (30d)
4

Description

I used 2.7.12 & 2.7.14 & 3.0.4 versions of Dubbo for maven multi module project, the problem is while the serviceImpl(UserService) is implementing 3 interfaces, only the one in the first gets registered with the service discovery (Nacos)

If I change the FetchUser interface next to implements keyword (`UserService implements FetchUser`) then fetchuser gets registered.

Am I missing something here? Or is it something a limitation to apache dubbo? Any help is appreciated. Thanks

My Service class implements multiple interfaces like below

```java
package com.business.usermanagement.usecaseImpl

@Component @DubboService
public class UserService implements UserOnboarding, FetchUser, ModifyUser {

}
```
Base Application class as below
```java
@SpringBootApplication
@DubboComponentScan("com.business.usermanagement")
public class UserManagementApplication {

@DisableLog
public static void main(String[] args) {
SpringApplication.run(UserManagementApplication.class, args);
}

}
```

and below is the dubbo configuration
```yaml
dubbo:
protocol:
name: dubbo
port: -1
registry:
address: nacos://${nacos.discovery.server-addr}/?username=${nacos.discovery.username}&password=${nacos.discovery.username}
metadata-report:
address: nacos://${nacos.discovery.server-addr}
application:
name: ${spring.application.name}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.