在xslt转换后,wso2 esb注入了几个值

时间:2018-07-08 07:51:42

标签: wso2 wso2esb

我正在从源表读取一些值并写入目标表。由于字段的名称和某些值不同,所以我在WSO2 ESB中使用XSLT中介器。 在xslt中介器之后,我想将更多的值注入到有效负载中。说一些我之前存储的变量。我无法执行xslt,因为这些值在某些变量中。 所以下面是我的代码。虚线的代码应该是什么?

<enrich>
                <source clone="true" property="SOURCE_TABLE_PAYLOAD" type="property"/>
                <target type="body"/>
            </enrich>
            <xslt key="gov:/bcogc/transformation/SourcetoTargetTransformation.xslt"/>
            ----------------ADD SOME MORE VALUES HERE to the payload------------------
             <header name="Action" scope="default" value="urn:inserttotargettable"/>
            <call>
                <endpoint key="gov:/endpoints/INSERT_DataService_EP.xml"/>
            </call>

请扔些灯

1 个答案:

答案 0 :(得分:1)

您可以再次使用富媒体,例如

<property name="orderID" scope="default" description="orderID">
            <orderID xmlns="">2</orderID>
 </property>
  <enrich>
            <source clone="true" xpath="$ctx:orderID"/>
            <target action="sibling" xpath="//orders"/>
  </enrich>

此处定义了orderID属性,因此现在您可以将该属性作为同级添加,以使您的请求来自XSLT,这样,在充实后,请求将如下所示

<orders>
 <order>
  <price>50.00</price>
  <quantity>500</quantity>
  <symbol>IBM</symbol>
  <comment>REF 10053</comment>
 </order>
 <order>
  <price>18.00</price>
  <quantity>500</quantity>
  <symbol>MSFT</symbol>
  <comment>ref 20088398289</comment>
 </order> 
</orders>
<orderID>2</OrderID>