簡體   English   中英

dataweave 輸出中的元音變了

[英]Umlauts changed in dataweave output

我的 json 響應中有特殊字符,它們是德語變音符號 (ä,ö,ü)。

我已將編碼設置為 UTF-8,這應該可以工作,但是 dataweave 的輸出是 ü ü and ä and ö並且它是com.mulesoft.weave.reader.ByteArraySeekableStream數據類型。輸入是byte[]

如何設置我的工作流程,以便響應顯示變音而不是垃圾?

Dataweave 輸入負載:

{
  "id": 1234567890
  "name": "prod123",
  "desc": "ü and ä and ö"
}

數據編織映射:

%dw 1.0
%input payload application/json
%output application/json encoding="UTF-8"
---
{
    "status": 0,
    "desc": payload.desc
}

JSON 響應:

{
  "status": 0,
  "desc": "ü and ä and ö"
}

只需從您的 dataweave 腳本中刪除輸出的編碼屬性,您應該會按預期獲得正確的輸出。 我在本地測試過,效果很好。 它不適用於 UTF-8 的原因是您的輸入可能使用其他編碼進行編碼。

您是否碰巧在較舊的 Windows 版本上運行? 存在 mule 不遵守 UTF-8 輸出指令的問題。

騾子支持:

您可能會遇到一個已知問題,即系統屬性 -Dfile.encoding=UTF-8 在 Windows 環境中被忽略。 ..... 您可以嘗試使用 Mule 4.1.3,因為它修復了已知問題,如果您仍然遇到相同的問題,請告訴我。

您可以嘗試在運行時的 wrapper.conf 文件中設置此系統屬性,它可能會解決您的問題。

暫無
暫無

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

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