2016-08-05 2 views
0

Я хочу, чтобы Delayer, привязанный к PersistentMessageStore, откатился к БД, если возникло исключение, исходящее из Delayer после времени задержки. Будет ли атрибут транзакции позаботиться об этом или мне нужно иметь txAdvice?Управление транзакциями Delayer

<int:delayer id="abcDelayer" 
      default-delay="1000" 
      message-store="JDBCMessageStore"> 
    <int:transactional/> 
</int:delayer> 

ответ

1

Цитирование Reference Manual:

<delayer> может быть обогащен взаимоисключающими подэлементами <transactional> или <advice-chain>. Список этих советов АОП применяется к прокси-внутреннему DelayHandler.ReleaseMessageHandler, который обязан освободить Message после задержки на Thread запланированной задачи. Он может использоваться, например, когда поток потока ниже по потоку генерирует Exception, и транзакция ReleaseMessageHandler будет отброшена назад. В этом случае отложенный Message останется в постоянном MessageStore.

Смежные вопросы