Проблема с кодировкой клапана jboss при перезаписи URL

У меня есть приложение, закодированное с помощью ejb3, jsf и maven, которое работает на jboss 4.2.2GA.

Проблема, с которой я столкнулся в течение 2 дней, заключается в том, что я не могу преобразовать неанглийские символы, которые добавляются в URL-адрес во время выполнения. Например, есть текстовое поле поиска и кнопка. Когда пользователь вводит слово, содержащее неанглийские символы, и нажимает кнопку, оно добавляется к URL-адресу с недопустимыми символами, такими как% 56 или & 347 и т. д.

Есть ли способ добиться того, что я пытаюсь сделать здесь? Кстати, есть ли способ решить эту проблему на стороне конфигурации jboss, а не на стороне приложения (фильтры или context.xml и т. д.)?

Будем признательны за любую помощь. Большое спасибо, Барис.

-- EDIT: я решил эту проблему с помощью URLEncoder. Когда я передал переменную в метод действия, я использую URLEncoder, чтобы закодировать ее в правильную кодировку.

Пример: Взять параметр из URL: String someString = ServletActionContext.getRequest().getParameter("someStringFromURL"); Кодировать строку; < strong>Закодированная строка = URLEncoder.encode(someString, "ISO-8859-9");


person javatar    schedule 30.06.2010    source источник


Ответы (2)


Найдите соответствующий соединительный элемент в файле tomcat server.xml (deploy/jboss-web.deployer/server.xml для последних версий) и добавьте атрибут URIEncoding со значением UTF-8.

person pra    schedule 30.06.2010
comment
Привет, сначала большое спасибо. Однако, даже если я попробовал, результат тот же. Буду рад, если у вас есть другое представление об этом. - person javatar; 02.07.2010

Я решил эту проблему с помощью URLEncoder. Когда я передал переменную в метод действия, я использую URLEncoder, чтобы закодировать ее в правильную кодировку.

Пример: взять параметр из URL:

String someString = ServletActionContext.getRequest().getParameter("someStringFromURL"); 

Кодировать строку;

String encoded = URLEncoder.encode(someString, "ISO-8859-9");
person javatar    schedule 24.02.2011