私の場合、EntityUtils.toString(res.getEntity(), "UTF-8")
で何故かとあるサイトだけ『java.nio.charset.IllegalCharsetNameException: 'UTF-8'』という例外を発生させてしまう現象に悩まされていました。
UTF-8が間違っているわけも対応しているわけもなく謎でした。
原因は分かりました。
それはそのサーバーシステムがおそらくhttpの規格を順守していないためです。
なぜ気づくのが遅かったのか、それは
『java.nio.charset.IllegalCharsetNameException: 'UTF-8'』という例外メッセージを見て下さい。
『'UTF-8'』この『』ないすべての文字列が文字コード名として認識されていました。
『'』は例外メッセージを生成する過程で勝手についたかのような感じだったため、解決に時間を要してしまいました。
(ウル覚えですが、『"』なら使えたはずです)
↑↑
※html内ではなくヘッダ上の文字コード指定です。
ちなみにこのサーバーの生成したhtmlはname属性も『"』などで区切ってもいませんでした。↓
html:武.html
<input name=user_id>
サーバー開発者に怒りを感じた事例でしたとさ。
もしかしたら同じことに悩まされている人もいるのではと思い、原因を乗せておきます。