如何在将消息添加到 jms 队列之前从 ESB 向发送者发送响应

how to send response to a sender from ESB before adding message to a jms queue

我有一个要求,我从 ESB api 获取请求并通过 restfull tomcat 端点使用 ESB 排序我正在验证请求然后将其发送到 JMS 队列,

这工作正常,但如果在 restfull tomcat 端点中验证失败,我也想将响应发送给发件人。由于验证失败,消息未传送到队列并被丢弃。

请求流程,

Sender -> 
    ESB API -> 
        ESB sequence -> 
               tomcat validation endpoint -> 
                                    ESB sequence -> 
                                            AddressEndpoint for JMS queue.

在这里,在 "tomcat validation endpoint ->" 如果验证成功,流程应该继续到 "AddressEndpoint for JMS queue.",同时它应该向发件人确认消息是成功的。

可能吗?

请建议,如果消息到达队列或在 esb 序列中的 tomcat 端点被丢弃,目前发件人不会收到通知。

当您收到来自 tomcat 验证端点的响应时,将执行 outSequence 或 faultSequence,具体取决于端点是否可达等。 在这些序列中,如果需要,您可以克隆响应,在一个目标中,您将消息发送到 JMS 队列,在另一个目标中,您向调用者发送响应

正如 Jean-Michel 所说,您可以使用克隆中介并将消息的副本发送给 JMS,并使用 RESPOND 或 [=12= 将另一个副本发送给调用者]SEND调解员.