[英]Spring Integration Java DSL - Http Outbound Gateway uri variable Expression
I have a Http Outbound Gateway where I want to set a uri variable with a value from a Message header.我有一个 Http 出站网关,我想在其中设置一个带有消息标头值的 uri 变量。 I can see that this can be done like so:
我可以看到这可以这样做:
.handle(Http
.outboundGateway(serviceUri, restTemplate)
.uriVariable("var", expression)
.httpMethod(HttpMethod.POST)
The expression is of type org.springframework.expression.Expression
.表达式的类型为
org.springframework.expression.Expression
。 How do I create such an Expression
object for say a JmsHeaders.CORRELATION_ID value?如何为 JmsHeaders.CORRELATION_ID 值创建这样的
Expression
对象? I can't find any examples anywhere.我在任何地方都找不到任何例子。 I know that the String SPEL would be
"headers['correlationId']"
but I don't know how to turn that into an Expression
object?我知道字符串 SPEL 将是
"headers['correlationId']"
但我不知道如何将其转换为Expression
对象?
I am using spring-integration-java-dsl:1.1.0.RELEASE
.我正在使用
spring-integration-java-dsl:1.1.0.RELEASE
。
See this answer to a similar question .请参阅此对类似问题的回答。
Note that JmsHeaders.CORRELATION_ID
is actually jms_correlationId
.请注意,
JmsHeaders.CORRELATION_ID
实际上是jms_correlationId
。 It's safer to use the constant...使用常量更安全......
PARSER.parseExpression("headers['" + JmsHeaders.CORRELATION_ID + "']");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.