I often use durable subscriptions and have to configure it manually:

@Bean
public JmsListenerContainerFactory<?> artemisConnectionFactory(CachingConnectionFactory connectionFactory, DefaultJmsListenerContainerFactoryConfigurer configurer) {

    connectionFactory.setClientId(clientId);

    DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
    configurer.configure(factory, connectionFactory);
    factory.setPubSubDomain(true);
    factory.setSubscriptionDurable(true);
    return factory;
}

It would be great to have configuration properties and auto-configuration for that:

spring.jms.subscription-durable=true
spring.jms.client-id=exampleId

Comment From: mhalbritter

Superseded by #38817.