我想了解一个 java 程序,需要修改使用 jms spring 框架开发的程序。通常它具有 JMS 接收器和发送器,它从请求队列接收消息,并在作业完成后调用作业(另一个 java 程序),发送器将向响应队列发送响应。有几个问题如下,
- 在响应成功发布到响应队列之前,不会删除请求消息。它是如何实现的,其背后的逻辑是什么。
- 我想在发件人无法发送消息时(通过捕获 JMS 异常)编写将响应写入平面文件的功能。一旦发送者队列启动并运行,我将读取平面文件并发送响应。我需要的原因是因为如果作业失败,它参与作业处理可能需要数小时,然后接收器将再次读取输入消息。我想避免重复处理。请在这里提出你的想法。