Spring Integration:如何读取队列中未使用的消息?

时间:2014-05-15 12:34:08

标签: java spring queue spring-integration message-queue

我正在尝试在队列通道中读取未使用的消息。但无法找到办法。可能吗?如果是,请指出正确的文件。

目的是公开API,以便客户端可以在UI上查看待处理项。

谢谢,

1 个答案:

答案 0 :(得分:1)

您可以在一个ServiceActivator中引用“queue-channel”,并使用这些消息执行任何操作:

@MessageEndpoint(value = "jobQueuer")
public class JobStartupQueuer {

    @Resource
    private Queue<Message> jobChannelQueue;

    public boolean accept(Message<?> message) {
        LOG.info("Channel size: {}", jobChannelQueue.size());
        return true;
    }
}

因此jobChannelQueue会在您的ServiceActivator处理方法中被注入(例如,接受),我们可以引用队列及其内部消息。