2017-09-04 7 views
0

ドイツ語のウムラウト(ä、ö、ü)のjsonレスポンスに特殊文字があります。データウィーブ出力でUmlautsが変更されました

私はUTF-8にエンコードを設定しており、これは動作するはずですが、dataweaveからの出力はü and ä and öであり、それはdatatype.The入力がbyte[]あるcom.mulesoft.weave.reader.ByteArraySeekableStreamです。

私のワークフローをどのように設定すれば、レスポンスにウムラウトが表示され、迷惑メールではないようにすることができますか?

Dataweave入力ペイロード:

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

Dataweaveマッピング:

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

JSON応答:

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

JSONレスポンスをUTF-8エンコーディングで読み書きしていますか?たぶんそれは正しくエンコードされていますが、あなたの出力がByteストリームなので、何らかの理由で別のエンコーディング(ASCIIなど)を使ってデコードしていると、エラーと思われるかもしれません。また、入力ペイロードがUTF-8としてエンコードされていますか? –

+0

メッセージのコンテンツタイプをapplication/jsonに設定しました。 charset = UTF-8。私も傳のような漢字に問題があります。 – user3165854

答えて

0

ちょうどあなたのdataweaveスクリプトからの出力のエンコーディングプロパティを削除し、期待どおりに適切な出力を得る必要があります。私は私の地元でテストし、それは正常に動作します。 UTF-8で動作しないのは、入力が他のエンコーディングでエンコードされている可能性があるからです。

関連する問題