我有以下XMLXPath表達式中騾FO各範圍
<response>
<data-table filter="XXX" count="26">
<columns>
<column>sampm</column>
<column>sampn</column>
</columns>
<rows>
<row attr="535545">
<field>sampx</field>
<field>sampy</field>
</row>
<row attr="535548">
<field>samp1</field>
<field>samp2</field>
</row>
</rows>
</data-table>
</response>
從這個響應我必須遍歷行即; /response/data-table/rows/row
因此,這裏是我的騾子代碼段爲每個
<http:request config-ref="HTTP_REQUEST" path="api/query" method="GET" doc:name="HTTP" followRedirects="true">
</http:request>
<object-to-string-transformer doc:name="Object to String"/>
<foreach collection="#[xpath3('//response/data-table/rows')]" doc:name="For Each">
<logger message="#[payload]" level="INFO" doc:name="Logger"/>
</foreach>
但我得到一個警告「The expression does not evaluate to a type that can be split: java.lang.String"
有沒有什麼解決此問題
我試過你的建議。所以現在沒有警告「表達式不評估爲可拆分類型:java.lang.String」但是foreach中的記錄器將有效載荷作爲[行:空]而我想記錄儀應打印<中行的主鍵= 「535547」> KAT002 入境 MATT1104133 放電 4月14日-2016 1249 –
那是因爲你遍歷DOM節點,而不是字符串。嘗試使用'object-to-xml-transformer'將每個迭代值轉換爲XML字符串。如果不工作,請使用step-debug來精確確定每一行的類型並按照您的要求進行渲染。 –