2012-04-18 108 views
2

我使用的primefaces和p:inputText字段是必需的,我使用全局p:消息來顯示所需的信息,並只從後端bean咆哮。但是,在檢查時,將顯示p:messages和默認p:growl錯誤消息,以顯示必填字段。有誰知道如何禁用默認的咆哮訊息?刪除默認的咆哮消息

<p:messages id="messages" autoUpdate="true"/> 
<h:form id="addUser"> 
<p:growl id="newmessage" showDetail="false" globalOnly="true" /> 
<p:inputText id="name" value="#{manageUser.user.name}" required="true" /> 

,並在我的支持bean

if (uf.checkUsernameAvailability(user.getLogin())) { FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "Error", "Username already exists!"));} 

我不明白,如果沒有定義他們爲什麼他們不斷出現。

回答

1

默認情況下,p:growlp:messages將顯示所有消息或僅設置全局消息。

但是,這兩個組件都有另一個很好的屬性redisplay,您可以使用。從taglib documentation引用:

定義是否應該顯示已呈現的消息。默認爲 爲真。

此設置爲false,顯示已呈現信息的組件:

<p:growl id="newmessage" showDetail="false" globalOnly="true" 
     redisplay="false" /> 
+0

能否請您將您的代碼,你的問題(這個問題下面的編輯鏈接)?在評論中很難閱讀。 – 2012-04-18 13:22:48

+0

我試過了,這不是問題,因爲在其他頁面上我沒有p:只有咆哮p:消息和咆哮消息仍然出現。 – Questionmark 2012-04-18 14:31:10