ActiveMQ+;NMS可以';我不能接收消息

ActiveMQ+;NMS可以';我不能接收消息,activemq,nms,Activemq,Nms,我试图使用来自C#应用程序的ActiveMQ主题上的消息。我正在使用1.3.net版本,没有收到任何消息 我现有的代码使用了旧库(以及构建在我不想使用或升级的库之上的库),这些库工作得很好,所以我知道消息是沿着主题传播的,但我的简单程序和新库就是看不到它们 我使用从中复制和粘贴的代码作为测试。SimpleTopicSubscriber(通过一个简单的更改使其成为非持久消费者)只是没有收到任何东西。SimpleTopicPublisher工作得很好——我可以发送一条简单的消息,它就可以通过了,没问

我试图使用来自C#应用程序的ActiveMQ主题上的消息。我正在使用1.3.net版本,没有收到任何消息

我现有的代码使用了旧库(以及构建在我不想使用或升级的库之上的库),这些库工作得很好,所以我知道消息是沿着主题传播的,但我的简单程序和新库就是看不到它们

我使用从中复制和粘贴的代码作为测试。SimpleTopicSubscriber(通过一个简单的更改使其成为非持久消费者)只是没有收到任何东西。SimpleTopicPublisher工作得很好——我可以发送一条简单的消息,它就可以通过了,没问题

查看JMX控制台,我可以看到我的订户连接,看到它在正确的主题上,但它没有得到任何消息

有什么想法吗?我甚至尝试过使用1.2库,但没有任何区别

谢谢
Matt

您的客户端可能没有收到消息的原因有两个,一个可能是您没有调用Connection.Start(),否则消息泵将不会开始向您的客户端发送消息。另一个原因可能是,您现在的非持久主题订阅者是在发布者之后启动的,在这种情况下,将不会传递任何消息,因为您使用的是主题,而主题与队列类似,一旦发送消息,它就会被遗忘,因此稍后加入的订阅者不会接收在它之前发送的任何消息订阅

问候 蒂姆


开源集成:

结果发现有两个问题。我错误地编辑了示例代码,并传入了一个持久消费者id,而不是选择器。不太聪明

一旦我解决了这个问题,我就可以接收消息,但只能使用NMS/ActiveMq DLL的1.1版本。我无法接收版本为1.2或1.3的邮件

但如果我在连接时将wireformat.version=2作为参数传递,则一切正常。代理是5.0.0,我强烈怀疑这在更高版本的代理中可以正常工作

谢谢
Matt

谢谢Tim,不幸的是,我一定要打电话给Start,我已经设置我的发布者每30秒发送一条消息……你能把你的源代码发布到ActiveMQ用户组吗,我会看看发生了什么。问候蒂姆。开源集成:谢谢你的帮助-原来这一半是我的错,一半是有线格式的问题。。。