apache / apache/dubbo

[Bug] Triple unable to find class

Open
#14,451 3 comments 0 reactions 0 assignees View on GitHub
component/need-triage type/need-triage
Dominant language
Java
Stars
41.6k
Forks
26.4k
Avg merge
15h 13m
Merged PRs (30d)
4

Description

### Dubbo Version

Dubbo java 3.2.14




### Steps to reproduce this issue

![image](https://github.com/user-attachments/assets/d24c082d-c5d3-4e48-a88b-74106a88f6b1)
![image](https://github.com/user-attachments/assets/dc22d4b1-68fd-4954-9723-b299c6acf45c)

我有一个tri类型的接口,但是我不是直接实现dubbo生成的接口类,而是自定义了一个接口(IFileResourceDubboGrpc),然后这个接口再继承Dubbo生成的接口(FileResourceDubboGrpc)。

I have an interface whose protocol is tri, but instead of directly implementing the dubbo generated interface class, I have a custom interface (IFileResourceDubboGrpc), which then extends the Dubbo generated interface (FileResourceDubboGrpc).

关系就是:FileResourceDubboGrpcImpl --实现--> IFileResourceDubboGrpc --继承--> FileResourceDubboGrpc

Like this:FileResourceDubboGrpcImpl --interface--> IFileResourceDubboGrpc --extends--> FileResourceDubboGrpc

这个在3.2.5版本左右,是正常的,然后我升级到3.2.14后,这个方式就没办法用了。

This is normal around version 3.2.5, and then after I upgraded to 3.2.14, this method can not be used.

现在是否只能是直接实现dubbo生成的接口了?

Now, what else can I do but implement this class directly?




### What you expected to happen

获取接口的方式变了?

I haven't read the code in detail yet







```
java.lang.IllegalStateException: Not found class com.ligong.mes.system.api.dubbo.DubboIFileResourceDubboGrpcTriple, cause: com.ligong.mes.system.api.dubbo.DubboIFileResourceDubboGrpcTriple
at org.apache.dubbo.common.utils.ReflectUtils.forName(ReflectUtils.java:690)
at org.apache.dubbo.rpc.stub.StubSuppliers.getServiceDescriptor(StubSuppliers.java:61)
at org.apache.dubbo.config.ReferenceConfig.init(ReferenceConfig.java:347)
at org.apache.dubbo.config.ReferenceConfig.get(ReferenceConfig.java:238)
at org.apache.dubbo.config.ReferenceConfigBase.get(ReferenceConfigBase.java:395)
at org.apache.dubbo.config.utils.SimpleReferenceCache.destroyReference(SimpleReferenceCache.java:294)
at org.apache.dubbo.config.utils.SimpleReferenceCache.destroy(SimpleReferenceCache.java:248)
at org.apache.dubbo.config.utils.SimpleReferenceCache.destroy(SimpleReferenceCache.java:271)
at org.apache.dubbo.config.deploy.DefaultModuleDeployer.lambda$referServices$6(DefaultModuleDeployer.java:555)
at java.base/java.util.concurrent.ConcurrentHashMap$ValuesView.forEach(ConcurrentHashMap.java:4783)
at org.apache.dubbo.config.deploy.DefaultModuleDeployer.referServices(DefaultModuleDeployer.java:517)
at org.apache.dubbo.config.deploy.DefaultModuleDeployer.startSync(DefaultModuleDeployer.java:183)
at org.apache.dubbo.config.deploy.DefaultModuleDeployer.start(DefaultModuleDeployer.java:156)
at org.apache.dubbo.config.spring.context.DubboDeployApplicationListener.onContextRefreshedEvent(DubboDeployApplicationListener.java:157)
at org.apache.dubbo.config.spring.context.DubboDeployApplicationListener.onApplicationEvent(DubboDeployApplicationListener.java:143)
at org.apache.dubbo.config.spring.context.DubboDeployApplicationListener.onApplicationEvent(DubboDeployApplicationListener.java:52)
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:185)
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:178)
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:156)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:452)
at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:385)
at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:993)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:628)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:335)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352)
at com.ligong.mes.equipment.server.EquipmentServerApplication.main(EquipmentServerApplication.java:23)
```



### Anything else

_No response_

### Are you willing to submit a pull request to fix on your own?

- [ ] Yes I am willing to submit a pull request on my own!

### Code of Conduct

- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

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.