Giriş
DefaultJmsListenerContainer nesnesi yaratır. Normalde bu sınıfı Spring yaratıyor. Bazı özelliklerini değiştirmek istersek elle kodlamamız gerekir.
DefaultJmsListenerContainer nesnesi yaratır. Normalde bu sınıfı Spring yaratıyor. Bazı özelliklerini değiştirmek istersek elle kodlamamız gerekir.
Örnek
Şöyle yaparız
Daha sonra kullanmak için şöyle yaparız@Configurationstatic class JmsConfiguration {@Beanpublic DefaultJmsListenerContainerFactory myFactory(DefaultJmsListenerContainerFactoryConfigurer configurer) {DefaultJmsListenerContainerFactory factory =new DefaultJmsListenerContainerFactory();configurer.configure(factory, connectionFactory());factory.setMessageConverter(myMessageConverter());return factory;}}
constructor@Componentpublic class MyBean {@JmsListener(destination = "someQueue", containerFactory="myFactory")public void processMessage(String content) {// ...}}
Şöyle yaparız.
DefaultJmsListenerContainerFactory fact =
new DefaultJmsListenerContainerFactory();
setConcurrency metoduŞöyle yaparız
@Bean
public DefaultJmsListenerContainerFactory jmsListenerContainerFactory() {
DefaultJmsListenerContainerFactory factory =
new DefaultJmsListenerContainerFactory();
factory.setConnectionFactory(connectionFactory());
factory.setConcurrency("1-1");
factory.setMessageConverter(jacksonJmsMessageConverter());
return factory;
}
setConnectionFactory metoduŞöyle yaparız.
ConnectionFactory connFact = ...;
fact.setConnectionFactory(connFact);
setRecoveryInterval metoduŞöyle yaparız.
fact.setRecoveryInterval(10000L);
setSessionTransacted metodu
Şöyle yaparız.
fact.setSessionTransacted(true);
setSubscriptionDurable metodu
Örnek
Şöyle yaparız
@Beanpublic JmsListenerContainerFactory jmsFactoryTopic(ConnectionFactory connectionFactory,DefaultJmsListenerContainerFactoryConfigurer configurer) {DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();configurer.configure(factory, connectionFactory);factory.setPubSubDomain(true);factory.setClientId("produtor");factory.setSubscriptionDurable(true);return factory;}
Hiç yorum yok:
Yorum Gönder