在页面上成功地将客户添加到我的 JSF 应用程序后add_customer.jsf
,用户将被重定向到该页面list_customers.jsf
。
在此页面上,我希望显示一条成功消息。仅当用户确实来自该add_customer.jsf
页面时才应显示该消息。
我怎样才能做到这一点?
一种方法是在添加客户的操作方法中向 The Flash 添加一条消息。
add_customer.jsf
如果设置消息的是那个页面(或者实际上是它背后的代码),您不需要明确检查用户是否来自。在目标页面上,您只需要一个<h:messages>
组件。
我的一位同事在以下位置发布了一个示例 CRUD 应用程序,该应用程序正是这样做的:Sample CRUD application with JSF。
相关代码位于支持 bean UserEdit和重定向发生的页面中。
请注意,如果您的 JSF 实现是 Mojarra,则 Flash 仅适用于同一目录中的页面之间。如果这让您感到困扰,请考虑对此问题进行投票:http: //java.net/jira/browse/JAVASERVERFACES-2136
最好的方法是使用一个<h:message>
标签,您可以使用该标签绑定一条消息,该消息可以在您重定向到list_customer.jsf
.
在过去的 3-4 年里,我们一直在使用这种方法在我们的应用程序中显示消息,并且偶尔使用部分触发器在同一页面上刷新。