0

有没有办法在从 JMS 队列中使用 JMS 消息时获得通知?像监听器或通知?

谢谢

4

2 回答 2

2

我假设您正在使用 ActiveMQ,因为您用它标记了问题。

您可以在客户端使用消息时注册咨询通知。请参阅文档以获取建议,而您正在寻找的是ActiveMQ.Advisory.MessageConsumed.Queue

===== 更新 =====

哦,错误..您使用的是 Joram,而不是 ActiveMQ。这并不简单,但您可以使用客户端拦截器,它将确认消息返回到队列或主题,然后您将监听该消息。界面如下所示:

public interface MessageInterceptor {
    public void handle(javax.jms.Message pMessage, javax.jms.Session pSession);
}

见第 3.5 章。最新Joram doc PDF的消息拦截器。

您还可以使用interceptor_out服务器端拦截器。

于 2012-06-04T17:36:21.297 回答
1

不,JMS API 不提供消息传递通知选项的任何方式。这必须在应用程序级别完成。

于 2012-06-04T16:06:04.907 回答