Отслеживание предыдущей страницы в JSF - PullRequest
0 голосов
/ 30 августа 2011

Я хочу узнать предыдущую страницу, откуда вызывается текущая страница.На основании предыдущей страницы я хочу включить или отключить определенный компонент.Кто-нибудь может мне помочь в этом отношении.

1 Ответ

2 голосов
/ 30 августа 2011

Зависит от конкретного функционального требования, которое не совсем понятно из вашего вопроса.Вы можете передать уникальный параметр запроса.Например, когда речь идет о ссылке GET:

<h:link value="Next" outcome="next">
    <f:param name="foo" value="bar" />
</h:link>

или ссылке POST:

<h:form>
    <h:commandLink value="Next" action="next">
        <f:param name="foo" value="bar" />
    </h:commandLink>
</h:form>

со значением next.xhtml

<h:someComponent rendered="#{param.foo == 'bar'}">
    ...
</h:someComponent>

или если вы нене обращайте внимания на значение параметра:

<h:someComponent rendered="#{not empty param.foo}">
    ...
</h:someComponent>

Альтернатива, которая может быть намного лучше, если вы не хотите, чтобы конечный пользователь мог манипулировать запросом, - это установить свойство компонента во времяPOST и затем вернитесь к следующему представлению:

<h:form>
    <h:commandLink value="Next" action="#{bean.next}" />
</h:form>

, например,

public String next() {
    foo = "bar";
    return "next";
}

и next.xhtml

<h:someComponent rendered="#{bean.foo == 'bar'}">
    ...
</h:someComponent>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...