Решением было установить переменную среды LANG (в моем случае) en_US.UTF-8 или, возможно, любую другую локаль UTF-8. Я все еще озадачен тем фактом, что я ничего не мог сделать из кода, чтобы заставить мой сервлет вести себя правильно. Если нет способа сделать это, то это ошибка с моей точки зрения.

я были некоторые проблемы с чтением и записью UTF-8 из сервлетов на Tomcat 6 / Linux. запрос и ответ были utf-8, браузер был utf-8, URIEncoding был установлен в server.xml как на соединителях, так и на хостах. Короче говоря, все известные мне вещи в самом коде и конфигурации сервера были utf-8.

При чтении запроса мне пришлось взять байтовый массив из String, а затем снова преобразовать этот байтовый массив в String. При написании запроса мне приходилось писать байты, а не саму String, чтобы получить правильный ответ (в противном случае я бы получил исключение, в котором говорится, что некоторые символы, не входящие в ASCII, недопустимы по ISO 8859-1).

Ответы на вопрос(2)

Ваш ответ на вопрос