Beständigkeit von JSF-Nachrichten

Ich habe eine ViewScoped-Bean, die einige Business-Logik-Validierung hat. Ich zeige die resultierenden Fehler aus dieser Validierung auf der Seite mit

FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(severity, result, null));

Das Problem ist:

Der Benutzer sendet ein ungültiges FormularFormular wird erneut angezeigt, Nachrichten werden dem Benutzer aufgrund der Verwendung von PRG nicht angezeigt

Ich habe das mit der folgenden Codezeile gelöst:

FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true);

Das Problem besteht nun darin, dass die Nachrichten zur Überprüfung der Geschäftslogik zu lange bestehen:

Der Benutzer sendet ein ungültiges FormularFormular mit Fehlermeldungen erneut angezeigtBenutzer korrigiert und sendet gültiges FormularDas Formular wird mit der Meldung "Erfolg" erneut angezeigt, es werden jedoch auch frühere Fehlermeldungen angezeigt.

Wie kann ich das beheben?