Вам нужно будет создать JmsListenerContainerFactory
, который не использует транзакции.Например:
@Bean
public DefaultJmsListenerContainerFactory jmsListenerContainerFactory(
ConnectionFactory connectionFactory,
DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory listenerFactory =
new DefaultJmsListenerContainerFactory();
configurer.configure(listenerFactory, connectionFactory);
listenerFactory.setTransactionManager(null);
listenerFactory.setSessionTransacted(false);
return listenerFactory;
}
Полную информацию можно найти в весенних загрузочных документах .
Обратите внимание, что брокер сообщений Solace поддерживает транзакции (локальные иXA).
Чтобы включить локальные транзакции:
- Включить
allow‑transacted‑sessions
в профиле клиента, используемом вашим именем пользователя. - Отключить
direct transport
в вашем JMSфабрика соединений.
Полную информацию можно найти в документации Утешение .