При получении post запроса из html формы и его обработки в java, русский язык не распознается

Рейтинг: -1Ответов: 1Опубликовано: 26.07.2023

Вот так выглядит моя форма:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Manager</title>

</head>
<body>
    <form action="/product/new" accept-charset="utf-8" enctype="multipart/form-data" method="post">
        <p>
            <label for="name">Название:</label>
            <input type="text" name="name" id="name" required>
        </p>
        <p>
            <label for="description">Описание (необязательно):</label>
            <input type="text" name="description" id="description">
        </p>
        <p>
            <label for="photo">Фото (необязательно):</label>
            <input id="photo" name="photo" type="file"/>
        </p>
        <button type="submit">Добавить</button>
    </form>
</body>
</html>

когда я обрабатываю запрос в servlet api и пытаюсь получить значение параметров:

String name = req.getParameter("name");

Получается вот это: ÐоÑÐ¸Ñ При том что с английским языком все в порядке.

Я пытался перекодировать его через ByteBuffer но ничего не получилось ПОМОГИТЕ

Ответы

▲ 0

Огромное спасибо
@XelaNimed за ссылку на похожую проблему. В общем перед тем как читать значения параметров запроса установите нужную вам кодировку:

request.setCharacterEncoding("UTF-8");