h: Nachrichten zeigen keine Nachrichten an, wenn p: commandButton gedrückt wird

8

Ich habe ein Problem mit dem Tag h: messages in JSF, das einfach keine Nachrichten anzeigt. Im Glassfish-Protokoll sind keine Fehler, wenn ich auf die Schaltfläche klicke. Das Setup ist wie folgt:

test.xhtml:

%Vor%

Mit SessionScopedBean:

%Vor%     
hFonti 23.04.2013, 17:06
quelle

1 Antwort

16

Sie senden eine Ajax-Anfrage mit PrimeFaces <p:commandButton> . Ajax-Anfragen haben standardmäßig keine Form der Rückmeldung (es sei denn, PrimeFaces autoUpdate="true" wurde irgendwo benutzt). Sie sollten explizit Teile der Ansicht angeben, die Sie bei der Ajax-Antwort aktualisieren möchten.

Eine Möglichkeit besteht darin, das Attribut update für <p:commandButton> so anzugeben, dass es auf die Client-ID der Komponente <h:messages> verweist.

%Vor%

Eine andere Möglichkeit besteht darin, sie durch PrimeFaces <p:messages> zu ersetzen, das ein Attribut autoUpdate für den Zweck der automatischen Aktualisierung auf Ajax-Antwort hat.

%Vor%

Eine völlig andere Alternative ist das Deaktivieren von AJAX durch Hinzufügen von ajax="false" -Attribut zur Schaltfläche. Auf diese Weise wird ein synchrones Postback durchgeführt, was zu einer vollständigen Seitenaktualisierung führt, genau wie beim Standard-JSF <h:commandButton> wenn ohne <f:ajax> verwendet.

%Vor%

Siehe auch:

BalusC 23.04.2013, 18:24
quelle

Tags und Links