![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| NetLord |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
Здраствуйте!
У меня следующая проблема: JSP страница отображает файловую структуру моего компьютера и позволяет перемещаться по ней. В качестве параметров ей передаются название файлов , директорий. И вобщем все нормально если я использую JBuilder со встроенным Tomcat Но как только я перебрасываю приложение на отдельный Tomcat появляется проблема с кирилицей . В упор отказывается воспринимать и обрабатывать кириллицу. Получаю вместо символов ??? Допустим у меня директория Vingrad а в ней Винград При обращении к 1-й он ее прекрасно видит причем поддиректорию Винград понимает нормально видит ее, отображает нормально. Но как только я обращаюся к Винград получаю исключение FileNоtFoundException .....Vingrad\???????. JDK SE используются одинаковые в обоих случаях. |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 16 Всего: 151 |
Кодировка страницы прописана?
-------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| NetLord |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
Да с кодировкой страницы все ОК.
|
|||
|
||||
| Guest |
|
|||
|
Unregistered |
Здесь важна не кодировка страницы, а кодировка request: request.setCharacterEncoding("Cp1251");
Этот вызов должен быть произведен до вызова getParameter(). В книге "Самоучитель Java 2.0" (автора не помню) это рекомендуется делать в фильтре. Я пробовал - не получается. Способы обхода проблемы: 1. Получить параметр в виде byte[] и перекодировать вручную 2. Передавать не имя файла, а его номер в каталоге 3. Перекодировать имя файла вручную (например используя транслит) |
|||
|
||||
| NetLord |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
Спасибо, я разобрался.
Воспользовался кодировщиком из пакета apache.commons так как родной URLEncoder сбоил. Сразу стал понимать кириллицу из параметров request - хотя внешне оба кодировщика выдавали один и тот же результат. В чем баг не пойму |
|||
|
||||
| 3,14 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1614 Регистрация: 18.6.2004 Где: Н. Новгород Репутация: 3 Всего: 24 |
NetLord - а код старый и новый не запостишь?
-------------------- Может быть, это только мой бред, Может быть, жизнь не так хороша, Может быть, я не выйду на свет, Но я летал, когда пела душа... |
|||
|
||||
| NetLord |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 25.2.2005 Репутация: нет Всего: нет |
3,14
NetLord - а код старый и новый не запостишь? Новый код
Отличие старого только в том что в качестве кодека я использовал класс java.net.URLEncoder вместо org.apache.commons.codec.net.URLCodec Это сообщение отредактировал(а) NetLord - 20.4.2005, 12:11 |
|||
|
||||
![]()
|
| Правила форума "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. |