POST JSONリクエストをアプリケーションに送信しています。
POST /CharSetTest/Test HTTP/1.1
Host: localhost:8090
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 1637b92b-5896-4765-63c5-d04ad73ea9f1
{
"SampleRequest": {
"FullName": "関連当"
}
}
私のCXF JAXRSコンシューマーは以下のように定義されています。
@POST
@Produces("application/json; charset=UTF-8")
@Consumes("application/json; charset=UTF-8")
public Response testCharSet(@Encoded String jsonBody);
ただし、POSTリクエストとして送信した日本語文字(関連当)はエンコードされず、一部のジャンク文字 "é¢é£å½äºè"になります。
SoapUIを使用すると、「?????」文字。
このジャンクキャラクターは、リクエストを送信したクライアントごとに異なります。 POSTリクエストをエンコードするにはどうすればよいですか?
コンテンツタイプを次のように設定します。
"application/json;charset=UTF-8"
使用しているアプリケーションで投稿リクエストを送信するとき。そのアプリケーションのURLのヘッダーに「content-type」があります。
これを試して
@RequestMapping(value = "/play", method = RequestMethod.POST, produces={"application/json; charset=UTF-8"})
セットする produces={"application/json; charset=UTF-8"}
上記のように、あなたの@RequestMapping