![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
seth |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
Эти заголовки имелись ввиду?
Response Headers - http://localhost:8080/gg/index.jsp Server: Apache-Coyote/1.1 Content-Type: text/html;charset=UTF-8 Content-Length: 323 Date: Sat, 30 Sep 2006 17:00:19 GMT 200 OK Если нет - то где в этом плагине посмотреть то что надо? |
|||
|
||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Да, эти. Теперь убедись, что "Content-Type: text/html;charset=UTF-8" присутствует и на той странице, на которой ты просматриваешь результаты, и на той, откуда засылаешь POST. Если все в порядке, то следующее, на что будем смотреть, это кодировка входящего запроса. Например, на странице JSP можно написать так:
|
|||
|
||||
seth |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
Давайте для начала разберемся с выборкой из БД Заголовок jsp на который выводятся данные я уже приводил
бин тоже показывал <%=request.getCharacterEncoding()%> выдает null |
||||||
|
|||||||
3x3 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 17.9.2006 Репутация: 5 Всего: 8 |
А как вы передаёте сервлету строку для вставки? В URL?
-------------------- Зачем платить больше, когда можно заплатить дважды? |
|||
|
||||
seth |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
использую struts |
|||
|
||||
3x3 |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 17.9.2006 Репутация: 5 Всего: 8 |
Откуда берётся строка - из браузера? -------------------- Зачем платить больше, когда можно заплатить дважды? |
||||
|
|||||
seth |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
давайте для начала разберемся с выборкой из БД... |
||||||
|
|||||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Да, вот еще какую полезную вещь можно сделать: поменяй в форме method="post" на method="get", и тогда в адресной строке браузера адрес целевой страницы в части после знака вопроса будет содержать закодированную кириллическую строку. Любопытно было бы взглянуть, что она из себя представляет.
А что касается базы, то у меня нет сомнений, что там все кодируется нормально. Судя по симптомам, непонятности у тебя именно в вебном слое. |
|||
|
||||
3x3 |
|
||||||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 17.9.2006 Репутация: 5 Всего: 8 |
Она же у вас читается нормально в режиме UTF-8? Или я вас неправильно понял? Добавлено @ 01:10
Он вроде не писал ничего про форму. При таких хидерах как выше и гетом буквы пойдут в форме %uXXXX. Поэтому сначала надо разобраться откуда вообще приходит строка в неправильной кодировке. Это сообщение отредактировал(а) 3x3 - 1.10.2006, 01:11 -------------------- Зачем платить больше, когда можно заплатить дважды? |
||||||||||
|
|||||||||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
А вот в этом я как-раз и не уверен. Должны - да. Но судя по тому, что seth упоминал ранее, есть сильное подозрение, что приходит уже в 1251. Вот цитата: Поэтому я и говорю, хотелось бы увидеть запрос браузера в чистом виде. |
|||
|
||||
3x3 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 17.9.2006 Репутация: 5 Всего: 8 |
Хм.. Воспроизвел проблему. Именно постом оно и кривляется если кодировку в браузере скидываешь на 1251 принудительно.. Добавлено @ 01:56 еУМЙ РТЙОХДЙФЕМШОП УФБЧЙФШ ОЕРТБЧЙМШОХА ЛПДЙТПЧЛХ, ФП НПЦОП РЕТЕДБФШ УЕТЧЕТХ ОЕРТБЧЙМШОЩЕ ВХЛЧЩ -------------------- Зачем платить больше, когда можно заплатить дважды? |
|||
|
||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Шпион Смит, вас разоблачили ![]() |
|||
|
||||
3x3 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 261 Регистрация: 17.9.2006 Репутация: 5 Всего: 8 |
![]() ______ Вобщем воркэраунд для случая seth таков: В самом начале обработки, до любых обращений к свойствам реквеста, приложение должно сообщить реквесту, в какой кодировке он получил запрос для приложения. В случае JSP-шки это означает, что её первая строка должна выглядеть так:
PS Я потрясён этим обстоятельством... Сервер недопонимает в какой кодировке ему пришли данные POSTом. Это сообщение отредактировал(а) 3x3 - 1.10.2006, 03:02 -------------------- Зачем платить больше, когда можно заплатить дважды? |
|||
|
||||
Stampede |
|
|||
![]() Гносеолог ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 963 Регистрация: 25.4.2005 Где: Calgary, Alberta, Canada Репутация: 66 Всего: 144 |
Я тоже маленько потрясен. Только не сервером, а браузером. Тем, что он не сообщает, в какой кодировке он шлет данные запроса. А еще JSP. Не знаю, как в других контейнерах, но у меня в Jetty выражение <%@ page contentType="text/html;charset=KOI8-R" %> не приводит к выставлению заголовков ответа HTTP! Вот так вот, век живи - век учись ![]() ЗЫ. Да, и мы еще не знаем, какую роль во всем этом играет Struts, который, как выяснилось, тоже здесь фигурирует ![]() |
|||
|
||||
seth |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
Уххххх - понаписывали
![]() Я ведь чуть позже писал что перевел базу на UTF-8..... и теперь не могу прочитать оттуда - с записью в БД даже не хочу еще разбиратся пока не будет нормально выводится.... поскольку Mysql 5 то судя по всему просто мой коннектор не поддерживает такое различие кодировок - либо надо качать новый коннектор (что проблематично) либо ставить старый mysql с которым все ок.... или мне еще тут чего-нить посоветуют.... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |