【发布时间】:2013-10-03 00:34:17
【问题描述】:
我有 2 个 managedBean:第一个 (RequestScoped) 通过 h:commandLink 向第二个 (ViewScoped) 发送参数。两个 managedBeans 都在同一个页面中,但我在 Rich:TabPanel 的不同选项卡中使用它们:
@ManagedBean
@RequestScoped
public class TheRequestScopedManagedBean {
private String number
...
@ManagedBean
@ViewScoped
public class TheViewScopedManagedBean {
private String number;
...
这是视图,它使用了丰富的数据表: (action 方法仅用于显示 rich:tabPanel 中的第二个选项卡)。
// ... another dataTable's columns
<rich:column>
<f:facet name="header">Number</f:facet>
<b>
<a4j:commandLink value="#{theRequestScopedManagedBean.number}"
render="someRichPanel" action="#{anotherBean.showSecondTab}" immediate="true">
<f:setPropertyActionListener target="#{theViewScopedManagedBean.number}" value="#{theRequestScopedManagedBean.number}" />
</a4j:commandLink>
</b>
</rich:column>
这里的问题是ViewScopedBean只在第一次显示值,当我再次尝试传递它时,它显示了它的默认值(null)。
我在这个网站上看到了几个问题。但是在这种情况下我真的不知道该怎么办。
【问题讨论】:
标签: jsf