| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > jsp кодировка |
| Автор: belarusrulez 8.11.2010, 15:07 |
| в JSP стоит <%@page contentType="text/html" pageEncoding="UTF-8"%> request.setCharacterEncoding('UTF-8'); также на форме на всякий случай стоит accept-charset='UTF-8' всё равно в request приходит абра-кадабра |
| Автор: carper 8.11.2010, 16:57 | ||
Так работает:
? |
| Автор: Skipy 8.11.2010, 17:14 |
| Почитайте вот это: http://www.skipy.ru/technics/encodings_webapp.html |
| Автор: belarusrulez 9.11.2010, 11:56 |
| post работает get не работает ... |
| Автор: Skipy 9.11.2010, 14:01 |
| Строку запроса при get предъявите. |
| Автор: belarusrulez 9.11.2010, 14:17 |
| http://www.sitename.com/search.jsp?search=%D0%BC%D1%8F%D1%81%D0%BE скопировал |
| Автор: carper 11.11.2010, 10:33 |
Логично. Отсюда два выхода: 1. Пользоваться POST 2. Разбираться с настройками Apache, Tomcat, или что там у вас. Всякие там URIEncoding="UTF-8", useBodyEncodingForURI="true". Второй пункт плох хотя бы тем, что не всегда вам дадут возможность в этих настройках копаться. |
| Автор: Skipy 11.11.2010, 11:56 | ||||
UTF-8 в явном виде. Как паллиатив - перекодировка.
iso-8859-1 в примере - та кодировка, в которой интерпретируются пришедшие байты. Если у Вас строка интерпретируется изначально как iso-8859-1 (через символ идут Ð или Ñ) - Вам повезло, сможете декодировать. Если как Cp1251 (через символ Р и С) - хуже, комбинация 0хD098 обратно не восстановится. А по-хорошему, как правильно писал carper - или переходить на POST (предпочтительнее), или возиться с настройками. |