在ActiveMQ中配置通配符主题选择器

问题描述 投票:0回答:1

基于documentation通配符的支持的确存在,但是我似乎找不到任何其他信息来确定它是否应该工作,是否已在服务器上配置或生产者或消费者是否需要对其进行配置。] >

[我假设作为发布者,我只是将消息发送到名为/patient/2/goal/的主题,而当消费者订阅了名为/patient/*/goal/的主题时,它仍会收到消息,但是什么都没有显示。我想念什么?

[请注意,如果我将消息发布到/patient/*/goal/并订阅了/patient/*/goal/,那么我会收到消息。但是,这仅确认我的消息总线在工作,而不是通配符支持在工作。

生产者测试:

var connectUri = new Uri("...");
var factory = new NMSConnectionFactory(connectUri);
var connection = factory.CreateConnection();
session = connection.CreateSession();
var destination = session.GetTopic("/patient/1/goal/");
producer = session.CreateProducer(destination);
...

消费者:

var topic = _session.GetTopic("/patient/*/goal/");
var consumer = _session.CreateConsumer(topic);
...

基于文档通配符的支持的确存在,但我似乎找不到任何其他信息来确定它是否应该工作,是否已在服务器上配置或生产者或...

c# activemq nms
1个回答
0
投票

使用/作为路径分隔符,需要通过插件进行配置。切换到.使它按预期工作。

© www.soinside.com 2019 - 2024. All rights reserved.