主题名称中带有方括号的Mule JMS端点

主题名称中带有方括号的Mule JMS端点,jms,expression,mule,endpoint,Jms,Expression,Mule,Endpoint,我需要一个共享的Mule中的sonic主题的持久订阅。 对于这个场景,主题名称应该类似于[[test]]testtopic。但是骡子不让我进入'['或']' <jms:inbound-endpoint doc:name="JMS" connector-ref="sonicSub" topic="[[test]]testtopic" /> 我试着使用ASCII字符,但也不起作用。有没有办法让它发挥作用 <jms:inbound-endpoint doc:name="JMS"

我需要一个共享的Mule中的sonic主题的持久订阅。 对于这个场景,主题名称应该类似于[[test]]testtopic。但是骡子不让我进入'['或']'

<jms:inbound-endpoint doc:name="JMS" connector-ref="sonicSub" topic="[[test]]testtopic" />

我试着使用ASCII字符,但也不起作用。有没有办法让它发挥作用

<jms:inbound-endpoint doc:name="JMS" connector-ref="sonicSub" topic="#['\133']['\133']test#['\135']#['\135']testtopic" />

我也尝试了十六进制值。它不计算十六进制值

<jms:inbound-endpoint doc:name="JMS" connector-ref="sonicSub" topic="%5b%5btest%5d%5dtesttopic" />


我不能在端点中使用MEL吗?

方括号在Mule URI中是非法字符,Mule中的JMS传输在从端点URI解析主题名称时不会解码编码字符。因此,您不能在“主题”属性(或“地址”属性)中使用方括号设置主题名称。

FYI
[[test]]]
不是MEL。是的。。。我想知道是否有一种方法可以给我的主题命名,比如[[test]].testtopicAgreed。最好使用点作为分隔符,比如
test.testtopic
而不是
[[test]]testtopic
。这是否意味着我无法使用JMS端点从Mule创建sonic topic的共享持久订阅?如果您有时间,请查看下面链接中的sonic指南(第301页)。您可以通过创建一个自定义连接器来实现这一点,该连接器通过使用自定义JMSSupport实现或jms连接器使用的自定义JNDI实现来扩展默认JMSConnector。基本上,您只需要通过解析实现中的主题名称来解决这个问题。不过,我从未使用过SonicMQ。如果您真的需要此功能,请参阅GithHub for Mule JMS:感谢您的回复