获取消息类型PrimeFaces

时间:2015-03-18 05:24:47

标签: primefaces

我正在使用primefaces并提交表格。如果在辅助bean中发生任何异常,则抛出错误消息。我需要使用javascript包含错误消息执行一些操作。 目前我正在使用以下代码,但我将facesContext.maximumSeverity作为null。

    <p:commandButton action="#{backingBean.fetchSearchResults()}"
update="@form :searchResults" value="Update" 
actionListener="#{backingBean.updateDetails()}" validateClient="true"
oncomplete="handleResponse(xhr, status, args)" />

<h:outputScript target="head">
    function handleResponse(xhr, status, args) {
        if( args.notValid || args.validationFailed) {
            alert('Balls 1');
            return;
        } else if (#{facesContext.maximumSeverity==null or facesContext.maximumSeverity.compareTo(FacesMessage.SEVERITY_ERROR) ge 0}) {
            alert('Balls 2');
            return;
        } else if (#{facesContext.maximumSeverity==null or facesContext.maximumSeverity.ordinal=='1'}) {
            alert('Balls 3');
            return;
        } else {
            alert('Everything is Ok.');
        }
    }
</h:outputScript>

1 个答案:

答案 0 :(得分:0)

您错误地假设在调用javascript时评估#{facesContext.maximumSeverity==null or facesContext.maximumSeverity.ordinal=='1'}。它不是。在呈现页面时对其进行评估。此时,严重性值很可能为空。