每个中介的WSO2ESB,FOR EACH RESPONSE每个元素都有/ n / t额外的

时间:2016-06-23 08:10:00

标签: wso2 wso2esb

我有以下提到的肥皂请求,我正在使用WSO2ESB 4.9 肥皂要求:

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><jsonArray><jsonElement><a><s>as</s></a><b>Type1</b><c>C1</c><d><t>A1</t></d><e>e1</e></jsonElement><jsonElement><a><s>as</s></a><b>Type2</b><c>C2</c><d><t>A1</t></d><e>e1</e></jsonElement></jsonArray></soapenv:Body></soapenv:Envelope>

我想通过jsonElement / b迭代并获取json列表:["Type1", "Type2"]。但我得到以下列表:

[
  "\n\t\t\t\t\t\t\t\t\t\t\tType1\n\t\t\t\t\t\t\t\t\t",
  "\n\t\t\t\t\t\t\t\t\t\t\tType2\n\t\t\t\t\t\t\t\t\t"
]

请以任何方式获取所需的清单。对于每个调解员:

<foreach expression="//jsonArray/jsonElement">
    <sequence>
        <payloadFactory media-type="xml">
            <format>
                <jsonElement>
                    $1
                </jsonElement>
            </format>
            <args>
                <arg expression="//b" evaluator="xml" />
            </args>
        </payloadFactory>
    </sequence>
</foreach>

1 个答案:

答案 0 :(得分:1)

让它工作,foreach <jsonElement>中有空格和换行符。

工作代码:

<foreach expression="//jsonArray/jsonElement">
    <sequence>
        <payloadFactory media-type="xml">
            <format>
                <jsonElement xmlns="">$1</jsonElement>
            </format>
            <args>
                <arg expression="//b" evaluator="xml" />
            </args>
        </payloadFactory>
    </sequence>
</foreach>