我有一个前端开发人员已经完成的 HTML 消息错误,因此我需要严格使用他的设计。
我需要编写一个继承<h:message/>
的组件吗?并实现渲染?或者,当我使用FacesMessage
在JSF上下文上添加错误时,还有其他简单的方法可以在其中自动显示一些html。机制?
完美的解决方案是,当我添加 FacesMessage
时在我的<div>
的上下文中将显示带有自定义 HTML 的内容。是否可以?
我怎样才能进行这种定制?有什么简单的方法吗?
我不想使用OutputMessage
因为我不会使用FacesMessage
机制。
最佳答案
HTML应该添加到XHTML页面中。无论如何,你可以使用FacesContext.getMessages(String)
检查组件是否有一些消息(并根据该消息呈现适当的 HTML)。
例如
<h:outputText value="Here is the message!:" rendered="#{myBean.messageForComponentX}"/>
<h:message for="componentX"/>
在你的bean中
public isMessageForComponentX() {
return (FacesContext.getMessages("componentX") != null) && (FacesContext.getMessage("componentX") > 0);
}
您还可以查看<rich:notify>
和<p:growl>
组件(来自 RichFaces 和 PrimeFaces),用于消息的自定义管理。
关于java - 如何自定义<h :messages/> style in JSF 2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13633130/