簡體   English   中英

如何在WSO2 esb中使用xpath來獲取xml子節點

[英]How to fetch xml child node using xpath in WSO2 esb

我有一個xml負載,如下所示,

<ret:msgData xmlns:ret="http://example.com/ret" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <users>
        <fbuser>user1</fbuser>
        <fbuser>user2</fbuser>
        <googleuser>user2</googleuser>
    </users>
</ret:msgData>

從這個有效載荷中,我需要所有fbuser節點。 為此,我在esb的屬性中介器中的xpath下使用了此功能。 但這給了我價值觀而不是節點。

 <property xmlns:ret="http://example.com/ret"
           name="fbuser"
           expression="//ret:msgData/users/fbuser"
           scope="default"
           type="STRING"/>
 <log level="custom" separator=",">
    <property name="fbuser" expression="get-property('fbuser')"/>
 </log>

輸出的輸出是user1user2相反,我正在尋找如下輸出。

<fbuser>user1</fbuser>
<fbuser>user2</fbuser>

當我在http://www.freeformatter.com/xpath-tester.html中測試xpath時,相同的代碼為我提供了正確的輸出。

請提出建議。

坦率地說,使用XSLT可以更好地解決此問題,該XSLT旨在將XML從一個應用程序提取/轉換為另一個應用程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM