Невозможно выполнить сопоставление URL-адресов с помощью Pretty Faces 3.3.2, JSF 2.0, JBoss 6.1.0 final - PullRequest
0 голосов
/ 11 ноября 2011

У меня проблема с сопоставлением URL-адресов Pretty Faces.

У меня есть один управляемый компонент со следующими сопоставлениями:

@ManagedBean
@RequestScoped
@URLMapping(id = "search", pattern = "/search/", viewId = "/search/search.xhtml")

И он отлично работает, когда я иду на http://ip/search/?keywords=word.

Однако, когда я пытаюсь изменить шаблон отображения, я получаю сообщение об ошибке.

@ManagedBean
@RequestScoped
@URLMapping(id = "search", pattern = "/search", viewId = "/search/search.xhtml")

Я ожидаю, что http://ip/search?keywords=word даст тот же ответ, что и ссылка выше, но, к сожалению, я получаю ошибку 404 HTTP.

search.xhtml находится в папке WebContent / search / веб-проекта, развернутого на JBoss 6.1.0 final.

Интересно то, что когда я использую JBoss 5.1.0 и Pretty Faces 3.2.0 и JSF 1.2, отображение работает нормально (конечно, в этом случае все отображения выполняются с помощью конфигурации XML).

Буду признателен за любой ответ, спасибо!

Ответы [ 2 ]

0 голосов
/ 11 января 2012

Существует конфликт между именем папки, в котором хранится файл .xhtml , и значением pattern , поэтому, если имя папки совпадает со значением шаблона отображение не работает.

В моем случае мне пришлось изменить имя папки search на search_pages , и отображение стало работать нормально - теперь можно посетить http://ip:port/search?keywords=keyword и чтобы получить соответствующие результаты.

Я не знаю, предполагается ли такое поведение для Pretty Filter, но для меня это выглядит немного странно.

0 голосов
/ 25 ноября 2011

Вы пробовали версию 3.3.2 от PrettyFaces?Там были исправлены некоторые ошибки.Кроме того, вы пытались полностью обновить страницу и кеш браузера?Иногда перенаправления кэшируются браузером.

Кроме того, если хуже становится хуже, я предлагаю отладку com.ocpsoft.pretty.faces.PrettyFilter и посмотрите, что происходит внутри.

Также сделайтеубедитесь, что у вас нет какой-либо другой конфигурации перезаписи URL, которая могла бы повлиять на отображение, например добавление косой черты или что-то в этом роде.

...