在 JSF 2 中,您可以传递 ids、Strings 其他可以作为请求参数发送的东西f:viewParam
或@ManagedProperty
(即在此处讨论)。
但是,我想在视图之间传递对象,从 view1 到 view2。我的支持豆是@ViewScoped
。我尝试了以下方法:
<f:setPropertyActionListener value="#{view1Bean.myObject}" target="#{view2Bean.myObject}" />
这会view2Bean
在 view1 上创建一个,在查看 view2 时它不再存在。所以,view2Bean.myObject
是null
,因为该属性从未在 的特定实例上设置过view2bean
。
我考虑过使用 Flash 范围,这似乎正是用于此目的的工具。但是,我在某处读到 BalusC,说它在我正在使用的 Mojarra 中损坏了。
在视图之间传递对象的最佳方式是什么?