【发布时间】:2015-04-09 06:25:57
【问题描述】:
我有一个要求,我必须在重试消息时添加和更新消息头。
这是我的听众或消费者。我的消息正在重试,但在设置标题时出现异常。请告知正确的方法。
根据 JMS 规范,消息头永远不是只读的。
javax.jms.MessageNotWriteableException:消息属性是只读的
public void onMessage(Message message) {
if (message != null && message instanceof TextMessage) {
TextMessage textMessage = (TextMessage) message;
try {
String input = textMessage.getText();
throw new Exception();
} catch (Throwable t) {
t.printStackTrace();
try {
message.setStringProperty("retryable","YES");
} catch (JMSException e) {
e.printStackTrace();
}
throw new RuntimeException(t);
}
}
}
【问题讨论】: