如何显示 JSF 成功消息
Posted
技术标签:
【中文标题】如何显示 JSF 成功消息【英文标题】:How to display a JSF success message 【发布时间】:2011-08-07 11:17:19 【问题描述】:我想知道当 h:form 中提交的数据有效时,如何在 JSF 页面上添加“成功”消息。例如“记录成功插入”。我尝试使用 FacesContext.addMessage(String clientId, String message),但该消息显示在同一个 h:messages 框中,该框在无效数据的情况下显示错误消息,导致文本为红色。我不想使用 javascript 警报。
任何帮助将不胜感激。
【问题讨论】:
【参考方案1】:使用 null
作为客户端 ID 使其成为全局消息,并在视图中使用以下内容仅显示全局消息:
<h:messages globalOnly="true" />
只需将其放在表单下方或上方的某个位置,具体取决于功能要求。如果您已经使用<h:messages/>
来显示验证错误,而不是为每个输入元素使用<h:message/>
,那么您需要在此设置globalOnly="false"
。
【讨论】:
感谢您的快速回复。您的解决方案似乎不起作用。成功消息显示在两个 h:messages 框中。我的代码看起来像 只需在另一个上设置globalOnly="false"
:) 查看答案更新。
不幸的是我仍然收到两次消息,视图如下: 使用不同的样式类
h:messages infoStyle="color:darkgreen" errorStyle="color:darkred"
添加消息时 为了成功
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_INFO, message, null);
失败
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_ERROR, message, null);
【讨论】:
以上是关于如何显示 JSF 成功消息的主要内容,如果未能解决你的问题,请参考以下文章