Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/22: Рейтинг темы: голосов - 22, средняя оценка - 4.55
0 / 0 / 1
Регистрация: 28.09.2010
Сообщений: 25

гет-запрос и кириллица

12.05.2013, 21:04. Показов 4712. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго времени суток. Для экономия времени разработки пытаюсь передать кириллицу через get-запрос, ну и как следует ожидать на выходе крякозябры. Пытался использовать URLDecoder.decode(string, string). Результат тот же. Контейнер Tomcat. Использую Struts и Spring.

Страница jsp, на которой я хочу получить параметр get-запроса

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<%@page import="java.util.List"%>
<%@page import="com.realsoft.templates.webapp.WebTemplateConstants"%>
<%@ page language="java"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-logic" prefix="logic"%>
<%@ taglib uri="/tags/struts-tiles" prefix="tiles"%>
<%@ page contentType="text/html; charset=utf-8" %>
 
 
<%
    request.setCharacterEncoding("utf-8");
    List tchtList = (List)request.getAttribute(WebTemplateConstants.TEACHER_LIST);
    String chairName = request.getParameter("entryName");
%>
 
<h4>Список преподавателей на кафедре <%=chairName %></h4>
Action, который обрабатывает этот запрос:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
public class TeacherListAction extends AbstractAdminAction {
    
    private static Logger log = Logger.getLogger(TeacherListAction.class);
    
    public TeacherListAction() {
        super();
    }
 
    @Override
    protected ActionForward executeAdminAction(ActionMapping mapping,
            ActionForm form, HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        try {
            request.setCharacterEncoding("utf-8");
            HttpSession session = request.getSession(true);
            IComponentFactory manager = (IComponentFactory) session.getServletContext().getAttribute(WebTemplateConstants.MANAGER_ATTR);
            TeacherListForm tchr = (TeacherListForm)form;
            IBUniver data = manager.getUniverData();
            List<BUniverInfo> info = data.getChairTeachers(tchr.getIdChair());
            log.debug("WITHOUT ANY ENCODING OR DECODING" + tchr.getEntryName());
            log.debug(URLEncoder.encode(tchr.getEntryName(), "UTF-8")); 
            log.debug("DECODE" + URLDecoder.decode(tchr.getEntryName(), "UTF-8"));
            request.setAttribute(WebTemplateConstants.TEACHER_LIST, info);
            return mapping.findForward("success");
        } catch (Exception e) {
            return mapping.findForward("error");
        }
    }
}
Не подтолкнете куда копать? Спасибо.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.05.2013, 21:04
Ответы с готовыми решениями:

Передать гет запрос
$bl = file_put_contents('http://api.fastsms.pro/balance.php?key=2634bded41e01a0becff3d49540d168c'); print_r($bl); Возможно через...

Простейщий Гет запрос
procedure TForm1.Button1Click(Sender: TObject); var s: String; list:TStringList; begin list:=TstringList.Create; ...

сложный гет запрос delphi
всем хай :) в обещем мне понадобилось сделать гет запрос на все ссылки находяшиеся в memo1 делал так : i:integer ........ ...

3
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
13.05.2013, 11:34
А можно поинтересоваться, как выглядят эти кракозябры?
0
0 / 0 / 1
Регистрация: 28.09.2010
Сообщений: 25
13.05.2013, 12:54  [ТС]
Цитата Сообщение от Skipy Посмотреть сообщение
А можно поинтересоваться, как выглядят эти кракозябры?
С этой jsp-страницы я передаю название кафедры через get-запрос
Java
1
2
3
<td>
<a href="<%=request.getContextPath() %><%=href %><%=data.getId() %>&entryName=<%=URLDecoder.decode(data.getName(), "UTF-8") %>">Перейти</a>
</td>
На этой странице я ее хочу отобразить
Java
1
2
3
4
5
6
7
8
9
10
11
<%
    request.setCharacterEncoding("utf-8");
    List tchtList = (List)request.getAttribute(WebTemplateConstants.TEACHER_LIST);
    String chairNamee= URLEncoder.encode(request.getParameter("entryName"), "UTF-8");
    String chairNameee = request.getParameter("entryName");
%>
 
 
<h4>Список преподавателей на кафедре <%=chairNamee %></h4>
 
<h4>Список преподавателей на кафедре <%=chairNameee %></h4>
На странице это выглядит вот так:

Список преподавателей на кафедре %C3%90%C2%9A%C3%90%C2%B0%C3%91%C2%84%C3% 90%C2%B5%C3%90%C2%B4%C3%91%C2%80%C3%90%C 2%B0+%C3%90%C2%BA%C3%90%C2%BE%C3%90%C2%B C%C3%90%C2%BF%C3%91%C2%8C%C3%91%C2%8E%C3 %91%C2%82%C3%90%C2%B5%C3%91%C2%80%C3%90% C2%BD%C3%91%C2%8B%C3%91%C2%85+%C3%91%C2% 82%C3%90%C2%B5%C3%91%C2%85%C3%90%C2%BD%C 3%90%C2%BE%C3%90%C2%BB%C3%90%C2%BE%C3%90 %C2%B3%C3%90%C2%B8%C3%90%C2%B9

Список преподавателей на кафедре Кафедра компьютерных технологий
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
14.05.2013, 14:56
Судя по виду строки, Ваш setCharacterEncoding помогает как мертвому припарка. У Вас в явном виде UTF-8 интерпретированный как iso-8859-1.

Попробуйте поставить фильтр, который будет выставлять кодировку запросу. Вот тут есть подробности:
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.05.2013, 14:56
Помогаю со студенческими работами здесь

Выполнить ajax запрос, гет, на чистом js
var oXmlHttp = createXMLHttp(); oXmlHttp.open('GET', '/ajax.php', true); oXmlHttp.setRequestHeader('Content-Type',...

Как добавить гет в запрос MySql
Добрый день вот код: if(isset($_GET)) { mysql_query(&quot;INSERT INTO testing(test) VALUES (???)&quot;); } что должно быть в VALUES что...

Как сделать правильный гет запрос?
Как правильно с сылки получить гет запрос?? $query = &quot;select * from `doska_photogallery`&quot;; $res = mysql_query($query) or...

Гет запрос не выдает всю информацию
Хотел спарсить список вещей , но когда отправил гет запрос мне выдало не полную информацию. Вот иследования элемента в браузере: ...

Передача знака & через гет-запрос
Всем привет! Как передать гетом значек &amp;?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru