1
我WEBAPPLICATION是多個片段和模板的構建。 Header-Template有一個「p:messages」來顯示應用程序範圍的錯誤。除此之外,我有一個內容模板來顯示內容/正文。
現在我有以下問題:我想在內容模板中的組件下顯示內容閥值錯誤(例如選擇了錯誤的日期等)。如果我發送的FacesMessage這不僅會顯示在內容的消息部分,而且在頭:
目前只有兩個組件,這些組件將被驗證:
<p:calendar id="calendar1" value="#{doesn't matter}">
<f:validateRequired></f:validateRequired>
</p:calendar>
<p:calendar id="calendar2" value="#{doesn't matter}">
<p:ajax event="dateSelect" listener="#{onDateSelect}"
partialSubmit="true" update="ContentMessages"/>
</p:calendar>
的信息標籤:
<p:messages id="GlobalMessages" showSummary="true" showDetail="false" closable="true" redisplay="false"/>
<p:messages id="ContentMessages" showDetail="true" autoUpdate="true"/>
我如何發送的FacesMessage:
FacesContext.getCurrentInstance().addMessage(componentClientId,
new FacesMessage(FacesMessage.SEVERITY_ERROR, "Error:","Error Text"));
我試過至今:
用兩個P:有消息標籤= 「CALENDAR1」 和= 「CALENDAR2」。兩個模板仍然存在錯誤。
使用我的「ContentMessages」和for-tag:for =「calendar1 calendar2」。在標題中顯示錯誤,而不在內容中,僅當我爲for-tag使用單個組件ID時,它會再次在兩個模板中顯示msg。
我不能做什麼:
- 使用globalOnly = 「真」。
- 爲報頭設置嚴重性,僅針對信息和錯誤&致命錯誤的內容。