如何在有效负载表达式中添加两个pathVariables?

时间:2019-06-19 07:38:55

标签: java spring-integration

我有带有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>

1 个答案:

答案 0 :(得分:1)

有效载荷是单个对象;不能是两个。

您可以将变量之一添加到<header/>中,也可以创建一些POJO并使用

"new com.foo.MyVariableContainer(#pathVariables.jobName, #pathVariables.currentCustomer)"