Иметь URL с не-латинскими символами в параметрах запроса: http://localhost:9080/proxy-octopus/oct2c/!adm_v2_Common.DialogForm?func=FiltrProc&title=Поиск процедур по набору атрибутовWebsphere Строка запроса проблема кодирования
Changed кодирования URL-адрес для WAS для Windows-1251: client.encoding.override установлены в Windows-1251
запросов параметры получены хорошо. Следующий код возвращает действительное значение: «Поиск процедур по набору атрибутов».
request.getParameter("title")
Но для следующего кода, который я получил действительное значение: "Func = FiltrProc & название = Ïîèñê% 20ïðîöåäóð% 20ïî% 20íàáîðó% 20àòðèáóòîâ".
request.getQueryString()
Также я могу получить реальное значение ("Func = FiltrProc & название = Поиск% 20процедур% 20по% 20набору% 20атрибутов") по следующему пути:
new String(request.getQueryString().getBytes(Charsets.ISO_8859_1),"Windows-1251")
Что я должен сделать, чтобы получить действительный значение на request.getQueryString()?
Невозможно изменить на UTF-8, поскольку у меня есть устаревшее приложение с кодировкой Windows-1251. Если символ неправильно закодирован, я бы не смог получить свойства методом request.getParameter («title»), не так ли? – Gregory
Вы имеете в виду исходный код в 1251? Можете ли вы преобразовать весь исходный код в UTF-8 и использовать UTF-8 в WAS? Seams request.getQueryString() использует кодировку по умолчанию. –
Это проект ** legacy **, поэтому я не могу изменить его кодировку. – Gregory