Я изучаю Java и при написании своего первого веб-приложения столкнулся с некоторыми проблемами с польскими буквами (например, ą, ć, ł, ś и т. д.). Проблема в том, что когда я привязываю объект к форме в запросе GET, в браузере он отображается нормально, со всеми польскими буквами в порядке (база данных настроена правильно), но после нажатия кнопки «Отправить» на странице в моем контроллере в запросе POST я получаю искаженный текст с отсутствующими польскими буквами. Когда я устанавливаю кодировку в представлении (файл JSP) на utf-8 в контроллере вместо «ą», я получаю «Ä» (два байта) и с кодировкой, установленной на iso8895- 2 Я получаю '±' (1 байт). В случае с сервлетами решением было добавить
request.setCharacterEncoding("8859_2");
в качестве первой строки в запросе POST, но Hibernate не использует HttpServletRequest, поэтому даже когда я добавляю его, я все равно получаю мусор. Для STS (моя IDE) выбрана UTF-8.
Есть ли какое-нибудь решение?
Журнал браузера :
Request URL:http://localhost:8080/Project/register
Request Method:POST
Status Code:200
Remote Address:[::1]:8080
Referrer Policy:no-referrer-when-downgrade
Response Headers
view source
Content-Language:pl-PL
Content-Length:3338
Content-Type:text/html;charset=UTF-8
Date:Mon, 29 Jan 2018 11:30:04 GMT
Request Headers
view source
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding:gzip, deflate, br
Accept-Language:en-US,en;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Content-Length:58
Content-Type:application/x-www-form-urlencoded
Cookie:JSESSIONID=88145A5FCBBD13FDBE3C288110B38187
DNT:1
Host:localhost:8080
Origin:http://localhost:8080
Referer:http://localhost:8080/Project/register
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.102 Safari/537.36 Vivaldi/1.94.971.8
Form Data
view source
view URL encoded
username:ąąą
email:
age:0
phone:0
password:
И после нажатия кнопки просмотра URL-адрес закодирован:
%C4%85%C4%85%C4%85
Подробнее здесь: https://stackoverflow.com/questions/484 ... -html-form
Нет польских букв в HTML-форме ⇐ JAVA
Программисты JAVA общаются здесь
1730134191
Anonymous
Я изучаю Java и при написании своего первого веб-приложения столкнулся с некоторыми проблемами с польскими буквами (например, ą, ć, ł, ś и т. д.). Проблема в том, что когда я привязываю объект к форме в запросе GET, в браузере он отображается нормально, со всеми польскими буквами в порядке (база данных настроена правильно), но после нажатия кнопки «Отправить» на странице в моем контроллере в запросе POST я получаю искаженный текст с отсутствующими польскими буквами. Когда я устанавливаю кодировку в представлении (файл JSP) на utf-8 в контроллере вместо «ą», я получаю «Ä» (два байта) и с кодировкой, установленной на iso8895- 2 Я получаю '±' (1 байт). В случае с сервлетами решением было добавить
request.setCharacterEncoding("8859_2");
в качестве первой строки в запросе POST, но Hibernate не использует HttpServletRequest, поэтому даже когда я добавляю его, я все равно получаю мусор. Для STS (моя IDE) выбрана UTF-8.
Есть ли какое-нибудь решение?
[b]Журнал браузера :[/b]
Request URL:http://localhost:8080/Project/register
Request Method:POST
Status Code:200
Remote Address:[::1]:8080
Referrer Policy:no-referrer-when-downgrade
Response Headers
view source
Content-Language:pl-PL
Content-Length:3338
Content-Type:text/html;charset=UTF-8
Date:Mon, 29 Jan 2018 11:30:04 GMT
Request Headers
view source
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding:gzip, deflate, br
Accept-Language:en-US,en;q=0.8
Cache-Control:max-age=0
Connection:keep-alive
Content-Length:58
Content-Type:application/x-www-form-urlencoded
Cookie:JSESSIONID=88145A5FCBBD13FDBE3C288110B38187
DNT:1
Host:localhost:8080
Origin:http://localhost:8080
Referer:http://localhost:8080/Project/register
Upgrade-Insecure-Requests:1
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.102 Safari/537.36 Vivaldi/1.94.971.8
Form Data
view source
view URL encoded
username:ąąą
email:
age:0
phone:0
password:
И после нажатия кнопки просмотра URL-адрес закодирован:
%C4%85%C4%85%C4%85
Подробнее здесь: [url]https://stackoverflow.com/questions/48481970/no-polish-letters-from-html-form[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия