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

名称与地址名不匹配的消息发送到队列的位置?

容阳焱
2023-03-14

我创建了一个名称与地址名不匹配的队列

然后我向队列发送一条消息,名称为queue

代码完成时没有错误,但是消息没有出现在队列中,并且没有出现在DLQ中,Artemis日志中也没有错误。短信去哪了?

共有1个答案

庾兴发
2023-03-14

这是ActiveMQ Artemis使用的基本寻址模型-将消息发送到一个地址,然后从队列中使用它们。消息如何从地址路由到队列取决于配置的路由类型。您可以在address model文档中阅读有关这方面的所有内容。

如果您将邮件发送到一个不存在的地址,那么它将无处路由。换句话说,它将被丢弃。如果要在死信资源中捕获这些类型的消息,则可以设置:

xml prettyprint-override"><address-settings>
   <address-setting match="#">
      <dead-letter-address>DLA</dead-letter-address>
      <send-to-dla-on-no-route>true</send-to-dla-on-no-route>
   </address-setting>
</address-settings>
<addresses>
   <address name="DLA">
      <anycast>
         <queue name="DLQ" />
      </anycast>
   </address>      
</addresses>

文档中对此进行了讨论。

final Destination dest = session.createQueue("ADD::QUEUE");
 类似资料:
  • 问题内容: 我正在尝试使用Java通过ssl连接到我的一台服务器。我尝试了很多选择,这是我的最佳尝试: 我使用以下推荐脚本生成了jssecacerts:http : //blogs.oracle.com/andreas/resource/InstallCert.java, 其中包含以下命令:java InstallCert ssl.someUrl.de changeit 之后,我再次执行了命令:

  • 当我尝试在Android Studio中启动我的应用程序时,它会产生如下3个错误: 错误:(3)检索项的父项时出错:找不到与给定名称“Android:TextApparance.Material.Widget.Button.Borderless.Colored”匹配的资源。 com.android.ide.common.Process.processException:org.gradle.Pro

  • 我设置了一个EJB项目,使用JMS将持久性实体对象发送到MDB。我使用JBoss EAP 7,使用Apache ActiveMQ作为消息传递提供程序。我像这样设置ConnectionFactory和队列: 这是我的消息生成器,它接收“Account”实体对象作为参数并将其发送到队列: EntityEnqueueBean。Java语言 MDB从队列接收消息并对其进行处理: java账户 不确定我做错

  • 本文向大家介绍匹配 IP 地址与域名的正则表达式,包括了匹配 IP 地址与域名的正则表达式的使用技巧和注意事项,需要的朋友参考一下 一个完整的域名,由根域、顶级域、二级、三级……域名构成,每级域名之间用点分开,每级域名由字母、数字和减号构成(第一个字母不能是减号),不区分大小写,长度不超过63。 单独的名字可以由正则表达式[a-zA-Z0-9][-a-zA-Z0-9]{0,62}来匹配,而完整的域

  • 我希望编写一个Azure函数,该函数接收来自IoTHub的消息,并根据消息中的数据将其放置在服务总线队列中。问题是,队列名称将根据我所查看的消息和留档的参数进行更改,例如,将队列名称设置为输出设置的一部分。有人做过类似的事情吗?或者有任何代码示例可以根据传入消息中的值写入队列?我试图设置一个函数,但它甚至不让我设置输出类型为服务总线,而不把队列名称,我不能,因为它是不固定的! 所以如果输入是: 函