我有一个用例,我必须使用更新的属性重新排队消息,消息正在重新排队,但消息属性没有得到更新
public class TestListener implements MessageListener{
@Override
public void onMessage(Message arg0) {
MessageProperties properties = arg0.getMessageProperties();
int count = properties.getMessageCount();
System.out.println(count);
properties.setMessageCount(++count);
throw new AmqpException("test");
}
但是count的值总是将其打印为0
答案 0 :(得分:0)
你不能这样做 - amqp协议不支持在拒绝邮件时发回数据。
您必须自行重新发布邮件,例如RabbitTemplate.send()
来电。
你也不应该使用"系统"财产用于您自己的目的;使用messageGetProperties().set("myHeader", count++)
。