diff --git a/spring-cloud-stream-binder-rocketmq/src/main/java/com/alibaba/cloud/stream/binder/rocketmq/support/JacksonRocketMQHeaderMapper.java b/spring-cloud-stream-binder-rocketmq/src/main/java/com/alibaba/cloud/stream/binder/rocketmq/support/JacksonRocketMQHeaderMapper.java index c3d1d83c8..db5d446ba 100644 --- a/spring-cloud-stream-binder-rocketmq/src/main/java/com/alibaba/cloud/stream/binder/rocketmq/support/JacksonRocketMQHeaderMapper.java +++ b/spring-cloud-stream-binder-rocketmq/src/main/java/com/alibaba/cloud/stream/binder/rocketmq/support/JacksonRocketMQHeaderMapper.java @@ -87,7 +87,7 @@ public class JacksonRocketMQHeaderMapper extends AbstractRocketMQHeaderMapper{ final Map target = Maps.newHashMap(); final Map jsonTypes = decodeJsonTypes(source); source.forEach((key,value) -> { - if (!(key.equals(JSON_TYPES))) { + if (matches(key) && !(key.equals(JSON_TYPES))) { if (jsonTypes != null && jsonTypes.containsKey(key)) { Class type = Object.class; String requestedType = jsonTypes.get(key); @@ -113,8 +113,7 @@ public class JacksonRocketMQHeaderMapper extends AbstractRocketMQHeaderMapper{ }else { target.put(key, new NonTrustedHeaderType(value, requestedType)); } - } - else { + }else { target.put(key, value); } }