使用ActiveMQ创建持久的主题和订户spring boot jms

使用ActiveMQ创建持久的主题和订户spring boot jms,第1张

使用ActiveMQ创建持久的主题和订户spring boot jms

正如前面的答案所指出的,有必要在工厂设置客户端ID和持久订阅

@Beanpublic DefaultJmsListenerContainerFactory jmsListenerContainerFactory() {    DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();    factory.setConnectionFactory(connectionFactory());    factory.setDestinationResolver(destinationResolver());    factory.setConcurrency("3-10");    factory.setClientID("brokerClientId");    factory.setSubscriptionDurable(true);    return factory;}

但这本身并不能将客户端注册为持久订阅者,这是因为

JMSListener
需要
containerFactory
指定该客户端,否则它将采用默认值:

@JmsListener(destination = "venta.topic",id = "comercial",subscription = "venta.topic",//this was also needed with the same name as the bean abovecontainerFactory = "jmsListenerContainerFactory" )public void receiveMessage(Venta venta) { logger.log(Level.INFO, "RECEIVED : {0}",venta);       repository.save(venta);}

值得一提的是,这篇帖子使我意识到自己的错误。

我希望这会帮助别人



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5621748.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存