我使用的是 jsf 2.1 和 Primefaces 3.3。我想使用 <p:message>
在页面顶部显示页面内的错误总数.
请给我建议如何去做,如果你能用一个例子来解释会很有帮助。提前谢谢你。
最佳答案
如果您只想计算特定的消息(例如,仅计算错误)。你可以这样做:
@ManagedBean
@RequestScoped
public class MessageCount {
public int getFatal() {
return countMessages(FacesMessage.SEVERITY_FATAL);
}
public int getError() {
return countMessages(FacesMessage.SEVERITY_ERROR);
}
public int getWarn() {
return countMessages(FacesMessage.SEVERITY_WARN);
}
public int getInfo() {
return countMessages(FacesMessage.SEVERITY_INFO);
}
private int countMessages(FacesMessage.Severity severity) {
Iterator<FacesMessage> iterator = FacesContext.getCurrentInstance().getMessages();
int count = 0;
while (iterator.hasNext()) {
FacesMessage msg = iterator.next();
if (severity.compareTo(msg.getSeverity()) == 0) {
count++;
}
}
return count;
}
}
在你的 jsf 页面中:
<h:outputText value="#{messageCount.error}"/>
关于jsf - 如何在 primefaces 消息中显示页面内的错误总数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14340848/