我遇到問題。我需要知道我的頁面是否有全局錯誤。這是因爲我有2個不同的h:messages
(錯誤容器)從FacesContext獲取當前全局消息
<h:messages id="errorMsgsContainer"
layout="table"
rendered="true"
styleClass="message-container error-message"
infoClass="info"
errorClass=" error" warnClass="warn-message warn" globalOnly="true"/>
<h:messages id="errorMsgsContainerValidation"
layout="table"
styleClass="message-container error-message-validation"
infoClass="info"
errorClass="error" globalOnly="false"/>
一個將顯示業務相關的消息和其他將只顯示驗證消息。由於業務需求,有兩個messages
。
當生成驗證錯誤消息時,facelet工作正常,因爲messages
標記之一具有globalOnly="true"
屬性值對。
問題出在我有全球唯一的錯誤。它會出現在兩個框中。
我想知道是否有任何錯誤是全局的,所以我不顯示驗證容器,直到用戶在我的表單上修復了全局錯誤。
我試着
FacesContext.getCurrentInstance().getMessageList().get(i).getSeverity()
和其他一些命令來得到它通過FacesContext
但它似乎並沒有工作。
請幫我解決這個問題。如何獲取當前的全局消息列表,以便我知道是否有全局錯誤?