[OmniFaces utilities] The
addFlashGlobal()
method adds a flash scoped global faces message. This adds a faces message to a clientId of null
. Use this when you need to display the message after a redirect.Method:
See also: Faces#getContext() | Faces#getFlash()
Usage:
The
information stored in flash scope "survives" one redirect. Let's
suppose that the below code is in page A.xhtml:
<h:form>
<h:commandButton value="Click
Me!" action="#{myBean.myAction()}"/>
</h:form>
The myAction() method
perform some tasks, including generating a global INFO message and redirecting
to page, B.xhtml:
import
org.omnifaces.util.Messages;
...
public
String myAction() {
FacesMessage message = new FacesMessage();
message.setSummary("This is page
B!");
message.setSeverity(FacesMessage.SEVERITY_INFO);
Messages.addFlashGlobal(message);
// do not try the Messages#addGlobal() because
the message will not "survive" during redirect
//Messages.addGlobal(message);
return "B?faces-redirect=true";
}
Now, in
page B.xhtml, you will
see the message: This is page
B!
Note Don't
forget to use in page where the messages are displayed the <h:messages>, for
global messages, or any other approach capable to display the global messages.
Niciun comentariu :
Trimiteți un comentariu