Моджарра теряет параметры просмотра - PullRequest
1 голос
/ 27 июля 2011

Я пытаюсь реализовать шаблон post-redirect-get в Моджара. У меня есть две страницы с одинаковым заголовком и поисковой формой.

Обе страницы включили в общий шаблон эти два кода

<f:metadata>
    <f:viewParam name="searchString" value="#{searchBean.searchString}" />
    <f:viewParam name="mutation" value="#{searchBean.mutation}" />
</f:metadata>
...
<h:form id="searchForm">
    <div class="search">
        <p:autoComplete id="autocomplete" minQueryLength="2" queryDelay="250" completeMethod="#{searchBean.complete}" value="#{searchBean.searchString}" />
        <p:watermark for="autocomplete" value="#{msg.search}" />
        <p:commandButton action="search?faces-redirect=true&amp;includeViewParams=true" value="#{msg.searchIt}">
            <f:setPropertyActionListener target="#{searchBean.mutation}" value="#{facesContext.viewRoot.locale}" />
        </p:commandButton>
    </div>
</h:form>

Когда я отправляю форму из article.xhtml, URL-адрес search.xhtml, когда я отправляю форму из search.xhtml, я получаю ожидаемый URL с шаблоном /search.xhtml?searchString=stringSearch&mutation=cs

Я что-то упустил?

Редактировать: поддерживающий бин использует некоторую комбинацию между просмотром и вспышкой (бин сохраняется в обеих областях и извлекается из той, где он выжил). После отладки кажется, что JSF получает параметры до того, как они будут сохранены в bean-компоненте (в неправильном случае использования).

...