Преобразовать XML-ответ в полезную нагрузку

У меня есть ответ, как это -

<rsp stat="ok" version="1.0">
   <result>
      <tagObject>
         <id>xx</id>
         <tag_id>001</tag_id>
         <type>Test</type>
         <object_id>101</object_id>
         <created_at>2013-10-09 11:41:45</created_at>
      </tagObject>
      <tagObject>
         <id>xy</id>
         <tag_id>002</tag_id>
         <type>Test</type>
         <object_id>102</object_id>
         <created_at>2013-10-09 11:41:45</created_at>
      </tagObject>
      <tagObject>
         <id>xz</id>
         <tag_id>003</tag_id>
         <type>Test</type>
         <object_id>103</object_id>
         <created_at>2013-10-09 11:43:44</created_at>
      </tagObject>
    </result>
</rsp>

Теперь мне нужно создать из него полезную нагрузку, чтобы я мог вставить только <tag_id> а также <object_id> в таблицу базы данных.

Любое предложение по этому поводу? Я пытался работать с Dataweave с Xpath3, но у меня это не сработало.

1 ответ

введите описание изображения здесь. Вы можете конвертировать Xml в карту Java, используя dataweave


%dw 1.0
%output application/java
---
payload.rsp.result.*tagObject map ((tagObject , indexOfTagObject) -> {
    tag_id: tagObject.tag_id as :string,
    object_id: tagObject.object_id as :string
})

Выход: [{tag_id=001, object_id=101}, {tag_id=002, object_id=102}, {tag_id=003, object_id=103}].

Другие вопросы по тегам