如何在Spring xd for RabbitMQ中动态指定路由密钥

如何在Spring xd for RabbitMQ中动态指定路由密钥,rabbitmq,spring-xd,Rabbitmq,Spring Xd,我正在尝试使用 “{$payload.routingkey'} 由于有效负载承载整个消息,因此我的消息是json {“routingkey”:“Disney”,“text”:“DisneyTweet”} 但这会导致错误 java.lang.IllegalArgumentException: Could not resolve placeholder 'payload.routingKey' in string value "${payload.routingKey}" 如何从消息中的值设置

我正在尝试使用
“{$payload.routingkey'}

由于有效负载承载整个消息,因此我的消息是json {“routingkey”:“Disney”,“text”:“DisneyTweet”}

但这会导致错误

  java.lang.IllegalArgumentException: Could not resolve placeholder 'payload.routingKey' in string value "${payload.routingKey}"

如何从消息中的值设置Routingkey

删除
$

--routingKey='payload.routingkey'"
它使用SpEL Json属性访问器

或者您可以使用
jsonPath
SpEL函数:

--routingKey='#jsonPath(payload, \"$.routingkey\")'"