【发布时间】:2013-08-28 12:36:33
【问题描述】:
在我的情况下,远程客户端正在向 wso2esb 发送消息,wso2esb 作为代理将消息转发到 ActiveMQ。一旦远程客户端收到 wso2esb 收到的消息确认,它就会从其本地存储中删除该消息。因此,只有在 ActiveMQ 收到来自 wso2esb 的消息并将其存储在持久存储中之后,才向远程客户端发送确认对我来说非常重要。 (存储并转发给消费者模式)。
我所能找到的关于activemq确认的所有内容都是关于一旦消费者从ActiveMQ收集消息并将确认发送回activemq(包括事务等)后ActiveMQ得到确认。但我找不到任何关于生产者得到确认的东西来自activemq 一旦activemq 收到了生产者的消息。
如何配置 ActiveMQ 以向充当代理生产者的 wso2esb 发送确认?
【问题讨论】:
-
发现 this 和 Producer Ack this。还找到了sendFailIfNoSpaceAfterTimeout under systemUsage。不确定 wso2esb 是否在内部使用这些将MessageProducer 可能抛出的任何异常返回给客户端。
-
是否可以配置 wso2esb 使其返回 'producer ack' 或 activemq 返回的 jmsexception 给客户端?