【问题标题】:How to specify which <p:messages> component to send message如何指定要发送消息的 <p:messages> 组件
【发布时间】:2014-05-07 18:23:53
【问题描述】:

我想根据 bean 中的结果更新不同的组件。现在我正在使用:

FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "test","test"));

并更新正确的组件:

<p:commandButton actionListener="#{Controller.method}" update="messageId"/>
<p:messages id="messageId"/>

有不同的方法吗?从 bean 中,我可以指定将消息发送到哪个消息组件吗?

【问题讨论】:

  • 您可以为特定组件准备消息:FacesContext.getCurrentInstance().addMessage(componentId, msg)

标签: jsf primefaces


【解决方案1】:

正如 Vasil 所说 - 您可以将消息绑定到 id(该 id 不一定需要存在组件'

FacesContext.getCurrentInstance().addMessage("idspecified", new FacesMessage("Header", "body"));

然后在你的xhtml中使用

<p:message for="idspecified" />

【讨论】:

  • 此方法仅在 p:message 标记位于被 ajax 编辑的区域内时才有效
猜你喜欢
  • 1970-01-01
  • 2012-05-24
  • 1970-01-01
  • 1970-01-01
  • 2019-06-02
  • 1970-01-01
  • 1970-01-01
  • 2019-03-18
  • 2022-10-18
相关资源
最近更新 更多