У меня есть странное явление, что сообщения jms, похоже, отправляются до того, как на самом деле произошла фиксация базы данных.
Допустим, у меня есть серверная операция foo (), которая отправляет сообщение клиенту после его завершения.Затем клиент загружает измененные данные с сервера.Теперь кажется, что сообщение jms отправляется до того, как фиксация фактически выполнена, поэтому клиент все еще получает старые данные, потому что его запрос все еще находится до конца первоначальной фиксации.
Вся работа сервера определеннотранзакционный, потому что, если выброшено исключение, событие jms не отправлено.
есть ли в спецификации jms требование о том, что сначала должны выполняться все фиксации базы данных, а затем сообщение jmsэто отправить или это зависит от реализации, в каком порядке это происходит?
Мы говорим о стандартной реализации hornetq в jboss 6.0.0.Final.
Обновление:
Кажется, у меня та же проблема, что и у этих парней: http://techstack.com/forum/websphere/34434-order-commits-xa-transaction.html
Обновление 2:
Другой пользователь с такой же проблемойhttp://community.jboss.org/message/114459