Primefaces 5 — темы, загрузка иконок в spring проекте

Рассмотрим как подключить различные темы для primefaces при работе с Spring Web Flow.
Подключить библиотеки достаточно легко, нужно лишь прописать в maven эти зависимости.

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

Затем в web.xml дописываем какая тема будет загружаться автоматически

Казалось бы всё, но в Spring-centric integration проектах нужно добавлять дополнительные настройки, про которые особо ничего не написано.

Проблема: не загружаются иконки компонентов Primefaces 5. Если посмотреть в код xhtml страницы, то можно увидеть эти строчки

И при нажатии на ссылку primefaces.css получим 404 и соответственно все кнопки и другие элементы будут без иконок и подсветки. Всё дело в том, что браузер не может достучаться до библиотеки с картинками из нужной темы по указанному URL. Лечиться это настройкой dispatcher-servlet.xml для корректной обработки URL вида

Листинг dispatcher-servlet.xml и webflow-config.xml соответственно:

webflow-config.xml

Полный листинг web.xml

Ещё одно важное замечание, которое может сэкономить вам время и нервы — браузер кеширует информацию и возможно у вас уже загрузились картинки, но страница продолжит показывать компоненты primefaces без иконок. Либо очистите кэш, либо заходите, к примеру, в хроме в режиме инкогнито.

Share Button
2
3750 Total Views 2 Views Today

Добавить комментарий