Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> помогите с кодировкой, про сервлеты и <FORM> 
:(
    Опции темы
pgood
Дата 3.2.2005, 12:17 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











В одном сервлете делаю <FORM> из которой вызывается другой сервлет, в нем получаю данные из полей этой формы, причем полученный русский текст выглядит так: ????? ???????????

плиз, расскажите где тут собака порылась и как с этим бороться
  Вверх
Wanderer2019
Дата 3.2.2005, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 937
Регистрация: 3.12.2004
Где: Санкт-Петербург/П рага

Репутация: нет
Всего: 17



не уверен на счет будет ли работать... попробуй поставить что нибудь вроде
Код

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head>


в начале загружаемой страницы...
PM ICQ MSN   Вверх
3,14
Дата 3.2.2005, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1614
Регистрация: 18.6.2004
Где: Н. Новгород

Репутация: 3
Всего: 24



Проблема известная, посмотри здесь : http://lib.juga.ru/article/archive/19/, если что будет непонятно - спрашивай!


--------------------
Может быть, это только мой бред,
Может быть, жизнь не так хороша,
Может быть, я не выйду на свет,
Но я летал, когда пела душа...
PM MAIL   Вверх
igon
Дата 3.2.2005, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 327
Регистрация: 30.10.2004

Репутация: нет
Всего: 21



и в другом сервлете ПЕРЕД первым обращением к request добавь
Код

request.setCharacterEncoding("windows-1251");



--------------------
Хотите поговорить об этом?
PM   Вверх
pgood
Дата 11.3.2005, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 7.3.2005

Репутация: нет
Всего: нет



smile . Ничего не помогло.
Если, в первом сервлете установить:
Код

response.setContentType("text/html");
response.setCharacterEncoding("Windows-1251");
request.setCharacterEncoding( "Cp1251");

а во втором вообще ничего не ставить.
То на страничке выводимой вторым сервлетом, кирилица получаемая из формы выглядит нормально, а кирилица из программы в виде вопросов. Иначе все наоборот.

Но мне главное чтобы эти строки в БД нормально заносились. А в БД они в любом случае заносятся в виде вопросов. Я использую ODBC-JDBC мост, поэтому попробовал установить кодировку для моста, как показано http://lib.juga.ru/article/archive/31/, но эффекта никакого.

Может, кто-нибудь еще чего подскажет?
PM MAIL   Вверх
Sleepy_PIP
Дата 11.3.2005, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 30.6.2004
Где: Moscow

Репутация: 2
Всего: 12



Цитата(pgood @ 11.3.2005, 10:23)
smile . Ничего не помогло.
Если, в первом сервлете установить:
Код

response.setContentType("text/html");
response.setCharacterEncoding("Windows-1251");
request.setCharacterEncoding( "Cp1251");

а во втором вообще ничего не ставить.
То на страничке выводимой вторым сервлетом, кирилица получаемая из формы выглядит нормально, а кирилица из программы в виде вопросов. Иначе все наоборот.

Но мне главное чтобы эти строки в БД нормально заносились. А в БД они в любом случае заносятся в виде вопросов. Я использую ODBC-JDBC мост, поэтому попробовал установить кодировку для моста, как показано http://lib.juga.ru/article/archive/31/, но эффекта никакого.

Может, кто-нибудь еще чего подскажет?

А БД у тебя какая? может там чарсет не установлен правильно?


--------------------
--
Sleepy_PIP. Pavel Pryazhentsev (ex. 2:5020/141) "... Лучше быть нужным, чем
свободным ..."
PM MAIL ICQ   Вверх
Guest
Дата 11.3.2005, 15:32 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Цитата(Sleepy_PIP @ 11.3.2005, 12:11)
А БД у тебя какая? может там чарсет не установлен правильно?

БД у меня Access XP.
Для драйвера я пробовал и Cp1251 и Windows-1251 устанавливать.
Мне кажется проблемы начинаются в сервлете.
Надо сделать так, чтобы кодировка кирилицы которую я пишу из сервлета и которую я получаю из формы совпадали, иначе мне кажется сервлет в коректном виде в БД по-любому не запишет.
Если кто-нть делал что-нть подобное пришлите пожалуйста работающий пример.
  Вверх
Sleepy_PIP
Дата 11.3.2005, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 30.6.2004
Где: Moscow

Репутация: 2
Всего: 12



Цитата(Guest @ 11.3.2005, 15:32)
Цитата(Sleepy_PIP @ 11.3.2005, 12:11)
А БД у тебя какая? может там чарсет не установлен правильно?

БД у меня Access XP.
Для драйвера я пробовал и Cp1251 и Windows-1251 устанавливать.
Мне кажется проблемы начинаются в сервлете.
Надо сделать так, чтобы кодировка кирилицы которую я пишу из сервлета и которую я получаю из формы совпадали, иначе мне кажется сервлет в коректном виде в БД по-любому не запишет.
Если кто-нть делал что-нть подобное пришлите пожалуйста работающий пример.

Я-б честно говоря попробовал-бы все-ж следущее:
1. зачитать ф. в win-1251 кодировке.
2. записать записи из этого ф. в БД.
3. считать их оттуда в новой транзакции
4. записать в другой ф. и смотреть что получилось ...
но это только проверка БД.



--------------------
--
Sleepy_PIP. Pavel Pryazhentsev (ex. 2:5020/141) "... Лучше быть нужным, чем
свободным ..."
PM MAIL ICQ   Вверх
pgood
Дата 13.3.2005, 04:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 7.3.2005

Репутация: нет
Всего: нет



Все! Корень проблемы найден, пошел дальше ковыряться.
Кому интересно, смотрите здесь http://servlets.chat.ru/
PM MAIL   Вверх
Sleepy_PIP
Дата 13.3.2005, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 512
Регистрация: 30.6.2004
Где: Moscow

Репутация: 2
Всего: 12



Цитата(pgood @ 13.3.2005, 04:06)
Все! Корень проблемы найден, пошел дальше ковыряться.
Кому интересно, смотрите здесь http://servlets.chat.ru/

я совершенно успешно работаю с томкатом-5, и JSP (JSF), и НЕ испытываю проблеммы:
For example, Tomcat always transform strings from html forms with ISO-8859-1 encoding, so if you post in other encoding you will receive "???"
и ничего специально не делал, кроме установки чарсета страниц(ы)


--------------------
--
Sleepy_PIP. Pavel Pryazhentsev (ex. 2:5020/141) "... Лучше быть нужным, чем
свободным ..."
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0765 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.