- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正在尝试将 ActiveMQ-CPP 与 HornetQ 一起使用。我正在使用 ActiveMQ-CPP 捆绑示例,但我很难使用它。生产者工作得很好,但消费者给我以下信息:
<p><strong>* BEGIN SERVER-SIDE STACK TRACE <em></em></strong><em><br/>
Message: Queue /queue/exampleQueue does not exist
Exception Class<br/>
<strong></strong></em><strong> END SERVER-SIDE STACK TRACE *</strong> </p>
<p>FILE: activemq/core/ActiveMQConnection.cpp, LINE: 768<br/>
FILE: activemq/core/ActiveMQConnection.cpp, LINE: 774<br/>
FILE: activemq/core/ActiveMQSession.cpp, LINE: 350<br/>
FILE: activemq/core/ActiveMQSession.cpp, LINE: 281<br/>
Time to completion = 0.161 seconds.</p>
问题是队列存在。代码在 ActiveMQ+Openwire 上运行良好,但我在 HornetQ+STOMP 上就没那么幸运了。
有什么想法吗?
最佳答案
尝试将您在 Hornetq 上定义的同一个队列的地址设置为目的地。
可能你的队列是这样在HornetQ上定义的
<queue name="exampleQueue">
<address>jms.queue.exampleQueue</address>
</queue>
所以,尝试通过 STOMP 连接到这个地址。
根据协议(protocol)查看如下帧:
订阅队列
SUBSCRIBE
destination:jms.queue.exampleQueue
^@
发送消息
SEND
destination:jms.queue.exampleQueue
it works
^@
一旦发送消息,您将在订阅队列的 session 上收到消息
MESSAGE
timestamp:1311355464983
redelivered:false
expires:0
subscription:subscription/jms.queue.exampleQueue
priority:0
message-id:523
destination:jms.queue.exampleQueue
it works
-- 编辑
还有一点我想补充...
HornetQ 不符合 STOMP 的命名标准(参见 http://community.jboss.org/message/594176),因此 activemq-cpp 有可能遵循 ativemq-nms 的行为,它将队列的名称“规范化”为 STOMP 标准:“/queue/YourQueue”(并导致命名问题)。
因此,如果是这种情况,即使您尝试将目标名称更改为“jms.queue.exampleQueue”,activemq-cpp 也可以将其规范化为“/queue/jms.queue.exampleQueue”。
在 NMS+HornetQ 中,没有“开箱即用”的方法来避免这种情况。唯一的选择是编辑 NMS 的源代码并删除标准化队列名称的部分。也许在 activemq-cpp 上也是这样。
关于c++ - HornetQ,消费者找不到队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4227763/
例如,我有一个父类Author: class Author { String name static hasMany = [ fiction: Book,
代码如下: dojo.query(subNav.navClass).forEach(function(node, index, arr){ if(dojo.style(node, 'd
我有一个带有 Id 和姓名的学生表和一个带有 Id 和 friend Id 的 Friends 表。我想加入这两个表并找到学生的 friend 。 例如,Ashley 的 friend 是 Saman
我通过互联网浏览,但仍未找到问题的答案。应该很容易: class Parent { String name Child child } 当我有一个 child 对象时,如何获得它的 paren
我正在尝试创建一个以 Firebase 作为我的后端的社交应用。现在我正面临如何(在哪里?)找到 friend 功能的问题。 我有每个用户的邮件地址。 我可以访问用户的电话也预订。 在传统的后端中,我
我主要想澄清以下几点: 1。有人告诉我,在 iOS 5 及以下版本中,如果您使用 Game Center 设置多人游戏,则“查找 Facebook 好友”(如与好友争夺战)的功能不是内置的,因此您需要
关于redis docker镜像ENTRYPOINT脚本 docker-entrypoint.sh : #!/bin/sh set -e # first arg is `-f` or `--some-
我是一名优秀的程序员,十分优秀!