У меня есть webapp, который, как ожидается, будет извлекать и отображать данные из внешнего приложения, доступного только через обмен сообщениями (JMS).
Итак, если пользователь отправляет запрос в браузере, тот же поток HTTP-запроса должен взаимодействовать с системой обмена сообщениями (серия MQ), так что тот же поток запросов может отображать данные, полученные из системы обмена сообщениями.
Есть ли образец, который я могу использовать здесь? Я видел некоторые неопределенные ссылки в сети, которые используют "Идентификатор корреляции" таким образом:
Msg m = new TextMsg("findDataXYZ");
String cr_id = m.setCorrelationID(id);
sendQueue.send(m).
// now start listening to the Queue for a msg that bears that specific cr_id
Response r = receiverQueue.receive(cr_id);
Есть ли что-то лучше? Другие найденные мной шаблоны ожидают, что ответ будет получен асинхронно. Это не вариант для меня, так как я должен отправить ответ обратно по тому же HTTP-запросу.