Я строю портлеты с использованием Spring Portlet MVC 3.02 и развертывания их на WebSphere Portal V7. У меня есть форма представления, где в одном поле со списком требуется отправить испанский символ. Что-то вроде этого:Отправка испанских символов в форме отправки
<form:select id="${ns}imTheField" path="imTheField" cssStyle="width:120px;">
<option value="AtTheEndTheresASpanishCharacterÑ">
AtTheEndTheresASpanishCharacterÑ
</option>
</form:select>
Символ «С» выглядит красиво на экране. Это комбинированное значение сопоставляется с атрибутом команды imTheField
процессом Spring Binding. После отправки формы и в методе обработчика, это то, что я получаю, когда я вхожу этот атрибут команды:
theCommand.getImTheField: AtTheEndTheresASpanishCharacterÃ
который не символ, который пришел из формы. Это вызывает у меня проблемы, когда возникают ошибки при отправке формы. Мне нужно снова отобразить форму с предыдущими значениями, которые у меня сейчас нет из-за этой проблемы.
Любые идеи? Это то, что я получаю от отладки Chrome в форме представления:
Request Headers
Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3
Accept-Encoding:gzip,deflate,sdch
Accept-Language:es
Form Data
imTheField:AtTheEndTheresASpanishCharacterÑ
Response Headers
Content-Language:es
Content-Type:text/html; charset=UTF-8
Обратите внимание, что поле imTheField
выглядит красиво отформатированный. Может быть, проблема с заголовком запроса Accept-Charset
?
Это приложение портлета, я не думаю, что Servlet фильтры применяются –
A приложение портлета - это всего лишь разновидность динамического веб-приложения. Вы можете использовать фильтры. Например, фильтры проверки подлинности часто используются в Websphere Portal для присоединения к событиям входа и выхода из системы. – zargarf
Уже попробуйте. Не исправляет проблему –