1

我正在寻找一个使用来自漂亮面孔的 MultiPageMes​​sagesSupport 的示例。

<lifecycle>
     <phase-listener>com.ocpsoft.pretty.faces.event.MultiPageMessagesSupport</phase-listener>
</lifecycle>

单击 ah:commandButton 后,我使用漂亮的面孔 POST-REDIRECT-GET 到我的主页。

我想传递一个 facesMessages:你是怎么做到的?

  FacesContext.getCurrentInstance().addMessage(null, new FacesMessage("Hey Man The Message is There Youhouhou, So CRAZY!!");
  return "pretty:home";
4

1 回答 1

0

FacesMessages 存储为请求属性。由于您执行重定向,服务器将启动一个新请求,因此您将丢失上次请求的所有属性。你可以:

  1. 将消息存储在会话中,检索它们,将它们存储为请求属性(使用FacesContext.getCurrentInstance().addMessage)并将它们从会话中删除。这是天真的解决方案。

  2. 在网上搜索了更多,看起来你可以使用FlashScope来解决这个问题。请参阅使用 ExternalContext.redirect()JSF 2.1 Redirect Preserving 错误消息将面孔消息添加到重定向页面

于 2013-10-24T16:20:50.810 回答