[OmniFaces utilities] The
addFlash()
method adds a flash scoped faces message to the given clientId. 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);
// for a certain component, replace null with clientId
Messages.addFlash(null, message);
// do not try the Messages#add() because the
message will not "survive" during redirect
Messages.add(null, 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, <h:message>, for component messages, or any other approach capable to display the messages.
Note Don't forget to use in page where the messages are displayed the <h:messages>, for global messages, <h:message>, for component messages, or any other approach capable to display the messages.
Niciun comentariu :
Trimiteți un comentariu