@Bean public DefaultJmsListenerContainerFactory jmsListenerContainerFactory(@Value("${spring.jms.listener.concurrency}") String concurrency, @Value("${spring.jms.listener.auto-startup}") boolean autoStart, ConnectionFactory connectionFactory, NotificationServiceErrorHandler errorHandler) { DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory(); factory.setSessionAcknowledgeMode(Session.CLIENT_ACKNOWLEDGE); factory.setErrorHandler(errorHandler); factory.setConcurrency(concurrency); factory.setConnectionFactory(connectionFactory); factory.setAutoStartup(autoStart); return factory; }
@Bean public DefaultJmsListenerContainerFactory jmsListenerContainerFactory(ConnectionFactory connectionFactory, PlatformTransactionManager transactionManager) { DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory(); factory.setTransactionManager(transactionManager); factory.setConnectionFactory(connectionFactory); factory.setAutoStartup(true); factory.setSessionTransacted(true); factory.setCacheLevel(CACHE_CONSUMER); return factory; }
@Bean public DefaultJmsListenerContainerFactory durableTopicJmsListenerContainerFactory(ConnectionFactory connectionFactory, PlatformTransactionManager transactionManager) { DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory(); factory.setTransactionManager(transactionManager); factory.setConnectionFactory(connectionFactory); factory.setAutoStartup(true); factory.setPubSubDomain(true); factory.setSessionTransacted(true); factory.setSubscriptionDurable(true); return factory; }
@Bean public DefaultJmsListenerContainerFactory topicJmsListenerContainerFactory(ConnectionFactory connectionFactory, PlatformTransactionManager transactionManager) { DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory(); factory.setTransactionManager(transactionManager); factory.setConnectionFactory(connectionFactory); factory.setAutoStartup(true); factory.setPubSubDomain(true); factory.setSessionTransacted(true); factory.setCacheLevel(CACHE_CONSUMER); return factory; }