Primefaces: Meldungen werden nach der Action eines p:commandButton nicht angezeigt


Folgende Situation: ein Command Button (wir arbeiten hier mit PrimeFaces 8) solle eine Anmeldung auslösen. Während dieser können Fehler auftreten, die in einem

 
<p:growl />

oder

 
<p:messages />

Element angezeigt werden sollen. Der Button sieht wie folgt aus:

 
<p:commandButton value="Registrieren/Anmelden" action="#{myBean.registerLoginAction}" 
     process="login,password" update="@form" />

Es wird die Action registerLoginAction der Backing Bean myBean ausgeführt. Die Felder login und password werden mit process an die Backing Bean weitergegeben und mit update das Formular aktualisiert. Bei Fehlern erscheinen jedoch die Meldungen nicht!

Wenn der Button durch einen h:commandButton ersetzt wird, funktioniert die Anzeige, da ein kompletter submit erfolgt – was hier nicht gewünscht ist. Die Lösung des Problems ist, dass auch der Button in process aufgenommen werden muss:

 
<p:commandButton value="Registrieren/Anmelden" action="#{myBean.registerLoginAction}" 
     process="login,password,@this" update="@form" />

Du hast Fragen oder Anmerkungen? Kontakt: arndt@schoenb.de