JSF много GET - параметры, как я должен представить их и получить их без f: viewparam - PullRequest
1 голос
/ 28 февраля 2012

У меня есть несколько форм поиска, для пяти разных баз данных (таблиц) Каждая форма содержит около 30-40 полей поиска, которые можно заполнить. Мне нужны все параметры как GET-параметры (из-за SEO - для нумерации страниц) Как я могу отправить их и получить их без определения 200 записей в файле .xhtml (я думаю, чтобы получить их с FaceContext это способ, как получить их)

спасибо!

1 Ответ

0 голосов
/ 28 февраля 2012

Без <f:viewParam> они доступны по ExternalContext#getRequestParameterMap(). Если рассматриваемый бин является областью запроса, вы также можете вместо этого использовать @ManagedProperty("#{param.name}") в объявлении свойства. Вы можете получить доступ к ним только при помощи метода @PostConstruct вместо конструктора. Вам также все еще нужны сеттеры для них.

Обратите внимание, что таким образом вы теряете встроенное преобразование и проверку JSF. Вам нужно будет выполнить все преобразования из String, например, Integer и выполнить всю проверку необходимых параметров самостоятельно, вместо того, чтобы <f:viewParam> сделал свою работу.

Смотри также:


Не связано с конкретной проблемой, 200 параметров довольно много. Даже строки запроса GET имеют свои ограничения . Содержит ли представление 50 условно визуализированных / включенных таблиц или около того? Вы уверены, что не можете повторно использовать параметр для нескольких целей и имеете один общий параметр, который указывает, как должны интерпретироваться другие параметры?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...