apache / apache/rocketmq-spring

RocketMQListener can not deserialize correctly for the Class implemente RocketMQListener through a middle interface

Open
#423 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
2.3k
Forks
943
PR merge metrics
No merged PRs in 30d

Description

When defining an interface as below

```
public interface ConsumerTemplate extends RocketMQListener, RocketMQPushConsumerLifecycleListener {
default void onMessage(T message) {

}

}
```

And implementation as below

```
public class ConsumerA implements ConsumerTemplate {

}
```

The Type of the message is simply a string, not T. I have tried to debug, it seems that the DefaultRocketMQListenerContainer cannot resolve the Type messageType correctly.

For your reference:
Please check private Type getMessageType() define in DefaultRocketMQListenerContainer.java

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.