簡體   English   中英

如何通過在ESB中的其他json中插入json來豐富數據

[英]How to enrich data by inserting json in other json in ESB

我正在使用Camel API通過ESB在我的項目中進行路由,並且對特定問題有以下要求:

有一個使用表單標簽URI調用的Web服務,該服務將請求作為JSON接收,並使用JSON數據響應POST調用。 我需要將請求JSON數據作為響應JSON中的字段之一包括在內。 我正在尋找一種可能的方法來豐富我的信息。 我可以通過在Java類中編寫轉換邏輯來做到這一點。 但是約束是我不能使用單獨的Java類進行數據轉換。 我必須通過使用標簽在camelContext內進行配置來做到這一點。 請提出建議。

您可以將整個Json主體讀取為樹JsonNode body = mapper.readTree(input); 之后,通過您的構造豐富它。 例如,如果您有下一個json正文:

{"valueList": {
    "key": "1",
    "value": "2"
  }
}

您可以通過以下代碼來豐富它:

  ObjectMapper mapper = new ObjectMapper();
  ObjectNode rootNode = mapper.createObjectNode();
  ArrayNode headersList = mapper.createArrayNode();
  rootNode.set("headersList", headersList);
  rootNode.putPOJO("valueList", body.get("valueList"));

我認為您需要看一下setBody方法。 在這里檢查

...
<setBody>
<simple>
{
"message" : "${body}"
}
</simple>
</setBody>
...

暫無
暫無

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

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