如何更好地统计globalOnly FacesMessages?

时间:2013-04-23 07:20:25

标签: jsf jsf-2

我编写了一个“不太正确”的代码来以编程方式计算globalOnly消息。

for (final FacesMessage message : facesContext.getMessageList()) {
    if (!message.getClass().getCanonicalName().equals("javax.faces.component.MessageFactory.BindingFacesMessage")) {
            globalOnlyMessagesCount++;
    }
}

对于非jsf developres:javax.faces.component.MessageFactory.BindingFacesMessage是一个不可见的类,因此instanceof不起作用。我发现邮件是BindingFacesMessageFacesMessage

是否有更好的解决方案? (除了我把字符串文字放在一起)。

1 个答案:

答案 0 :(得分:4)

仅限全局消息由null客户端ID标识。

所以,这应该与another getter taking a client ID

结合使用
int globalOnlyMessagesCount = facesContext.getMessageList(null).size();