我有带有path和一个pathVariables的inbound-channel-adapter,但现在我想添加第二个变量,并且找不到在有效载荷中的外观。
我找到了这个解决方案,但是我不希望变量出现在标题中
<int-http:inbound-gateway id="restCall"
request-channel="jobRunner"
supported-methods="POST"
path="/etl/{jobName}/{currentCustomer}">
<int-http:header name="jobName" expression="#pathVariables.jobName"/>
<int-http:header name="currentCustomer"/>
</int-http:inbound-gateway>
我需要类似的东西:
<int-http:inbound-gateway id="restCall"
request-channel="jobRunner"
supported-methods="POST"
path="/etl/{jobName}/{currentCustomer}"
payload-expression =
"#pathVariables.jobName,#pathVariables.currentCustomer">
</int-http:inbound-gateway>
答案 0 :(得分:1)
有效载荷是单个对象;不能是两个。
您可以将变量之一添加到<header/>
中,也可以创建一些POJO并使用
"new com.foo.MyVariableContainer(#pathVariables.jobName, #pathVariables.currentCustomer)"