如何 insert/append 新节点条目到 WSO2 BPEL 中的元素列表?

How to insert/append new node entries to an element list in WSO2 BPEL?

使用 wso2bps-3.5.1

我搜索过但没有找到任何关于如何在 WSO2 BPS BPEL 中动态填充元素列表的信息。

我的用例是遍历 Invoke activity 给出的列表以生成另一个元素列表。我正在使用 Foreach activity 循环,我在循环内创建一个局部范围的变量来构建新的列表条目。但是,我不知道如何将这个节点插入到新列表中。有内置函数吗?

如有任何示例,我们将不胜感激。

我自己解决了这个问题:

    xmlns:test="http://ode/bpel/unit-test.wsdl"
    queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
    expressionLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath2.0"
...
<bpel:assign validate="no" name="Assign">
        <bpel:copy>
            <bpel:from>
                <![CDATA[ode:insert-after($closeAccountResponse.closeAccountResponsePart/xclac:accountConnections, $closeAccountResponse.closeAccountResponsePart/xclac:accountConnections/xcom:accountConnection, $record)]]>
            </bpel:from>
            <bpel:to part="closeAccountResponsePart" variable="closeAccountResponse">
                <bpel:query><![CDATA[xclac:accountConnections]]></bpel:query>
            </bpel:to>
        </bpel:copy>
    </bpel:assign>