richfaces

Русские буквы и JSF

Четверг, января 27, 2011 | Программинг | Нет комментариев »

Недавно столкнулся с проблемой в процессе разработки русскоязычного ресурса  с помощью JSF (Richfaces) – все кириллические символы отлично отображаются, но в исходном коде страницы – только escape-последовательности.

например:

"Рубрики" -> "Ссылки"

Понятно, что это меня взволновало, ведь это плохо для СЕО, да и великий UTF-8 был везде, думал проблем не будет. Обидно было что JSF так не дружетсвеннен к UTF что заменяет все не латинские символы на эскейпы.

Несколько часов я рыл просторы гугла на предмет такой проблемы, а теперь решение передаю вам.

Дело в том, что есть параметр для web.xml

<context-param>
   <param-name>com.sun.faces.disableUnicodeEscaping</param-name>
   <param-value>true</param-value>
 </context-param>

Но он не работает для Sun реализации JSF. После добавления этого параметра ничего не произошло. Оказывается что параметр работает для Mojarra реализации. Стоит заменить jsf-api.jar и jsf-impl.jar (для jsf 1.2, хотяесть и реализация JSF2) в библиотеках (class-path) на реализацию Mojarra – и все ок.

Спасибо проекту Mojarra, а Вам – счасливого кодинга.

метки: , , , ,

Страницы

Поиск