我有一個問題,在MuleESB中將整數數組轉換爲xml。Mule Dataweaver int數組到XML元素肥皂
所以我有一個名爲UsagePoint
對象包含groups=ArrayOfint [_int=[2]]
在我變換組件Transform Message我曾嘗試以下tranforming方法,它是故意的,我已經離開了ns0 namespace
:
%namespace ns1 http://schemas.microsoft.com/2003/10/Serialization/Arrays
%type groups = :object {class: "xmlinterface.ArrayOfint"}
--
ns0#Groups: {
ns1#int: payload.groups.int as :object
},
和
%namespace ns1 http://schemas.microsoft.com/2003/10/Serialization/Arrays
%type groups = :object {class: "xmlinterface.ArrayOfint"}
--
ns0#Groups: payload.groups map {
ns1#int: payload.groups.int as :object
},
和
%namespace ns1 http://schemas.microsoft.com/2003/10/Serialization/Arrays
--
ns0#Groups: {
ns1#int: payload.groups
},
和其中I通過使用下面的方法得到的陣列設置一個流量變量groupint
只是變壓器組件之前調用payload.getGroups().getInt()
結果是[2]
和我得到一個反序列化誤差的Int32。
%namespace ns1 http://schemas.microsoft.com/2003/10/Serialization/Arrays
--
ns0#Groups: {
ns1#int: flowVars.groupint
},
但是當我打電話給payload.getGroups().getInt()[0]
這樣我得到我的整數,它工作正常。我的問題是數組中可能有更多的元素不止一個。所以我想要一個結果如下:
<Groups>
<int>1</int>
<int>2</int>
<int>3</int>
...
</Groups>
而不是隻有在結果xml中可以包含1個int元素的結果。
我也試過只是說ns0#Groups: payload.groups
。那麼如何編寫一個處理int數組的Dataweaver表達式呢?
爲我工作,非常感謝@Shoki。 – TheLearner