我已将下面的监听器写入Rabbit标头队列queue
:
@Override
public void onMessage(final Message message)
{
try {
if (reindexEventListener.serviceFlag){
System.err.println("Reindex started, Listener is stopped:\t");
throw listenerExecutionFailedException("Reindex started, Log Event Listener is stopped");
}
else{
String messageQ = new String(message.getBody(),"UTF-8");
LOGGER.debug("Message from the Services:\t"+messageQ.toString());
System.err.println("Message from the Services:\t"+messageQ.toString());
}
}
catch(Exception e)
{
LOGGER.error("Exception occur while publishing the message", e);
}
}
实际上,只要另一个队列reindexEventListener.serviceFlag
收到一些消息并绑定到监听器,例如:queue1
,就会设置标志flagListener
。
我能够使用queue
的消息,并根据queue1
设置的状态消息。但问题是queue
侦听器使用消息,并且这些消息不再出现在队列中。我希望queue
保留所有邮件,直到queue1
将状态设置为false
为止?在此先感谢。!!
答案 0 :(得分:0)
春天你可以停下来开始听。