From 53a6955e5b3945b2783fdc58900fca116410f505 Mon Sep 17 00:00:00 2001 From: qqeasonchen Date: Thu, 12 Sep 2019 10:40:21 +0800 Subject: [PATCH] [RIP-16]change the way creating reply message --- .../java/org/apache/rocketmq/client/utils/MessageUtil.java | 3 ++- .../org/apache/rocketmq/example/rpc/ResponseConsumer.java | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/client/src/main/java/org/apache/rocketmq/client/utils/MessageUtil.java b/client/src/main/java/org/apache/rocketmq/client/utils/MessageUtil.java index 81da669f..e60c0f66 100644 --- a/client/src/main/java/org/apache/rocketmq/client/utils/MessageUtil.java +++ b/client/src/main/java/org/apache/rocketmq/client/utils/MessageUtil.java @@ -24,13 +24,14 @@ import org.apache.rocketmq.common.message.MessageAccessor; import org.apache.rocketmq.common.message.MessageConst; public class MessageUtil { - public static Message createReplyMessage(final Message requestMessage) throws MQClientException { + public static Message createReplyMessage(final Message requestMessage, final byte[] body) throws MQClientException { if (requestMessage != null) { Message replyMessage = new Message(); String cluster = requestMessage.getProperty(MessageConst.PROPERTY_CLUSTER); String replyTo = requestMessage.getProperty(MessageConst.PROPERTY_MESSAGE_REPLY_TO); String requestUniqId = requestMessage.getProperty(MessageConst.PROPERTY_REQUEST_UNIQ_ID); String ttl = requestMessage.getProperty(MessageConst.PROPERTY_MESSAGE_TTL); + replyMessage.setBody(body); if (cluster != null) { String replyTopic = MixAll.getReplyTopic(cluster); replyMessage.setTopic(replyTopic); diff --git a/example/src/main/java/org/apache/rocketmq/example/rpc/ResponseConsumer.java b/example/src/main/java/org/apache/rocketmq/example/rpc/ResponseConsumer.java index ff3652fe..3580f87f 100644 --- a/example/src/main/java/org/apache/rocketmq/example/rpc/ResponseConsumer.java +++ b/example/src/main/java/org/apache/rocketmq/example/rpc/ResponseConsumer.java @@ -56,8 +56,8 @@ public class ResponseConsumer { String replyTo = msg.getProperty(MessageConst.PROPERTY_MESSAGE_REPLY_TO); //You must use MessageUtil to creage reply message, otherwise reply message maybe wrong. - Message replyMessage = MessageUtil.createReplyMessage(msg); - replyMessage.setBody("reply message contents.".getBytes()); + byte[] replyContent = "reply message contents.".getBytes(); + Message replyMessage = MessageUtil.createReplyMessage(msg, replyContent); //maybe you should create a producer to send reply message. SendResult sendResult = consumer.getDefaultMQPushConsumerImpl().getmQClientFactory().getDefaultMQProducer().send(replyMessage, 3000); -- GitLab