当前位置: 首页 > 知识库问答 >
问题:

JMSTemplate和DefaultMessageListenerContainer

皇甫琛
2023-03-14

我在Redhat ActiveMQ中有两个队列,一个用于消费,另一个用于生成和消费对象消息。

一旦从主队列中消耗,它会被推到第二队列进行进一步处理,但是当使用JmsTemboard时,消息会随机丢失,

我在DMLC容器2和JmsTemplate的ActiveMQConnectionFactory中使用相同的Bean

让我知道如何确保消息不会在JmsTemplate中丢失。

共有1个答案

黎鹤轩
2023-03-14

我会再次检查,确保没有其他人检查您队列中的消息。如果在某种开发环境中,有多个应用程序实例在运行,那么它们可能会争夺消息。它可能是另一个开发人员使用与ActiveMQ或dev/stage环境相同的连接字符串启动应用程序的另一个实例。

 类似资料:
  • 使用java和jmstemplate,我试图用包含CLOB字段的有效负载将消息编入oracle队列。 我的问题是你是怎么做这种事的?在谷歌上,有各种各样的建议表明我必须: 用空加载对消息进行排队 使用步骤1中创建的消息id从队列表中检索usr_data 将clob写入队列表。 约安。

  • 我使用的是Apache ActiveMQ Artemis 2.16.0(但也尝试了2.15.0)、artemis-jms-client 2.6.4和Spring Boot 1.5.16.release。

  • 我尝试测试一个发送jms消息的类,但无法模拟JmsTemplate JmsProducer.class: JmsProducerTest。类别: 当我运行这个测试用例时,它给了我:java。lang.IllegalArgumentException:对象不是声明类的实例 你对这个问题有什么想法吗?

  • 我正试图从我的应用程序发送一条带有JMS的消息。 我加入我的pom Spring开始了说 JmsTemboard和ConnectionFactory是由Spring Boot自动创建的。在这种情况下,ActiveMQ代理运行嵌入式。 在我的批处理程序中 但是找不到bean JmsTemplate 没有“org”类型的合格bean。springframework。jms。果心JmsTemplate'

  • (...)当您在非托管环境中使用JmsTemplate时,您可以通过使用属性SessionTransact和SessionAccountingEmode来指定这些值(事务和确认模式)。 当您将PlatformTransactionManager与JmsTemplate一起使用时,模板总是被赋予一个事务性JMS会话。(..) (顺便说一句,这是真的--会话是事务性的) 我调试了它不正确的原因,发现:

  • 我最近两天都在处理简单的任务,我已经在JBOSS6.x中配置了jms消息队列。我在spring中使用applicationContext.xml文件中的jmstemplate配置了jndi、jms MQ, 下面是邮件发送者