如何在p:messages组件中显示String Array中的值

时间:2015-09-18 08:14:54

标签: jsf primefaces

我需要你帮助显示字符串数组中的值,并在jsf页面的Messages组件中显示它们。

在代码中,我有String[]以下条目:

String[] messages = new String[] {
    "Record No.1 Fail",
    "Record No.2 Fail",
    "Record No.3 Success"
};

现在我需要你的帮助来显示字符串数组中的失败记录,它使用代码在消息组件中向用户调用数据:

FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, "Record No.1 Fail", ""));
 // values from String Array should be passed

jsf页面有:

<p:messages id="messages" showDetail="true" autoUpdate="true" closable="true" />

1 个答案:

答案 0 :(得分:0)

<p:messages>组件将处理多条消息。只需确保您已在xhtml页面中放置一个将在操作完成后呈现或更新的页面。

因此,在你的支持bean中,你应该遍历messages []并添加faces消息,就像@BalusC建议的那样。

        String[] messages = new String[] {
                "Record No.1 Fail",
                "Record No.2 Fail",
                "Record No.3 Success"
        };
        for(int i = 0 ; i < messages.length; i++){
            String msg = messages[i];
            FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, null));
        }

结果如下: enter image description here

顺便说一下,您没有使用details选项,因此请使用showDetail="false"