[OmniFaces utilities] The
addFlashGlobalWarn()
method adds a flash scoped global WARN faces message, with the given message body which is formatted with the given parameters. 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 WARN parameterized messages
and redirecting to page, B.xhtml:
import
org.omnifaces.util.Messages;
...
// WARN
message
private
static final String USER_WARN = "The {0} user has reached the maximum
number, {1}, of submissions !";
...
public
String myAction() {
// add an WARN
message as a global message in flash scope
Object[]
params = new Object[]{"Mark Rightwer", 5};
Messages.addFlashGlobalWarn(USER_WARN,
params);
// or
Messages.addFlashGlobalWarn(USER_WARN,
"Mark Rightwer", 5);
return
"B?faces-redirect=true";
}
Now, in
page B.xhtml, you will
see this message:
// WARN
message
The Mark
Rightwer user has reached the maximum number, 5, of submissions !
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.
Note By
default, this example uses the OmniFaces default message resolver, but you can use your own message resolver as in Working with OmniFaces Message Resolvers.
Niciun comentariu :
Trimiteți un comentariu