将请求范围的bean从一个页面传递到另一个页面

时间:2011-07-11 13:21:55

标签: spring jsf-2 scope request

如果我在JSF2的页面上有一个请求范围bean ....如何将它传递给另一个页面(我在Spring中使用JSF2)?

我尝试了以下但是它不起作用:

<h:commandButton action="complete.xhtml?faces-redirect=true"  value="Confirm Booking">
        <f:setPropertyActionListener target="#{quoteHolder.item}" value="#{quoteHolder.item}"/>
</h:commandButton>

1 个答案:

答案 0 :(得分:3)

action="complete.xhtml?faces-redirect=true"

您正在发送重定向。 <f:setPropertyActionListener>在这里没有多大帮助,因为请求作用域bean无论如何都会在调用操作阶段之后被包含。

您基本上有以下选项:

  1. 将所有数据作为请求参数发送(转换为/ String必需!)

  2. 不发送重定向(<f:setPropertyActionListener>变得多余了)

  3. 将其存储在会话范围的bean中(不推荐!可能对用户体验不利)。