1

我',使用带有spring xd 1.1的activemq 5.9。我想订阅 activemq 主题。所以,我正在使用 jms 源。Activemq 支持 * , > 等通配符。> 用于递归匹配从此名称开始的任何目标我在订阅 jms 源时尝试使用此通配符,如下所示:
stream create --name streamname --definition "jms --clientId=1 --destination=springin.> --durableSubscription=true --pubSub=true --subscriptionName=streamName | null"

错误:命令失败 org.springframework.xd.rest.client.impl.SpringXDException: XD133E:(pos 42): 'queue' 或 'topic' 的预期频道前缀,但发现 '--' jms --clientId=1 --目的地=springin.> --durableSubscription=true --pubSub=true --subscriptionName=streamName | 无效的

但是当我尝试这样的事情时:
stream create --name streamname --definition "jms --clientId=3 --destination=springin.*.tp1 --durableSubscription=true --pubSub=true --subscriptionName=streamName | null"
正在创建流。

所以支持'*'但'>'不起作用。我想使用这个 '>' 通配符。有什么解决方法吗?

4

1 回答 1

3

>是 DSL 中的保留字符(用于路由到命名通道)。

将值放在(转义)引号中:--destination=\"springin.>\".

于 2014-12-16T13:43:19.400 回答