У меня есть страница, где я использую bean-компонент @ViewScoped.На странице я получаю данные от bean-компонента и вызываю действие для него.Примерно так:
<h:form>
<h:dataTable value="#{partyBean.foundOrganisations}" var="party">
<h:column headerClass="header">
<f:facet name="header">
#{msgs['company.registration.number']}
</f:facet>
<h:commandLink value="#{party.registrationNumber}" action="#{partyBean.select}">
<f:setPropertyActionListener value="#{party}" target="#{partyBean.selectedParty}" />
</h:commandLink>
</h:column>
</h:dataTable>
</h:form>
partyBean
- это @ViewScoped
.Когда я попадаю на эту страницу по правилу навигации с <redirect />
, все работает нормально, но когда нет <redirect />
, foundOrganisations
берутся из одного экземпляра компонента, но setSelectedParty
вызывается в другом экземпляре компонента.бин, когда ссылка нажата.Проверено отладкой.
Почему это так?Можно ли что-то сделать, чтобы это работало без <redirect />
?