My JSF Books/Videos My JSF Tutorials OmniFaces/JSF PPTs
JSF 2.3 Tutorial
JSF Caching Tutorial
JSF Navigation Tutorial
JSF Scopes Tutorial
JSF Page Author Beginner's Guide
OmniFaces 2.3 Tutorial Examples
OmniFaces 2.2 Tutorial Examples
JSF Events Tutorial
OmniFaces Callbacks Usages
JSF State Tutorial
JSF and Design Patterns
JSF 2.3 New Features (2.3-m04)
Introduction to OmniFaces
25+ Reasons to use OmniFaces in JSF
OmniFaces Validators
OmniFaces Converters
JSF Design Patterns
Mastering OmniFaces
Reusable and less-verbose JSF code

My JSF Resources ...

Java EE Guardian
Member of JCG Program
Member MVB DZone
Blog curated on ZEEF
OmniFaces is an utility library for JSF, including PrimeFaces, RichFaces, ICEfaces ...

[OmniFaces Utilities] - Find the right JSF OmniFaces 2 utilities methods/functions

Search on blog

Petition by Java EE Guardians

Twitter

miercuri, 27 mai 2015

[OmniFaces utilities 2.0] Add in flash scope a parameterized global (or to the given client ID) ERROR faces message


[OmniFaces utilities] The addFlashError() method adds a flash scoped ERROR faces message to the given clientId, 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:
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 ERROR parameterized messages and redirecting to page, B.xhtml:

import org.omnifaces.util.Messages;
...
// ERROR message
private static final String FILES_UPLOADED_ERROR = "The {0} file cannot be uploaded ! File size should be smaller than {1} bytes.";
...
// for a certain component, replace null with clientId
public String myAction() {
// add an ERROR message as a global message in flash scope
Object[] params = new Object[]{"order.txt", 1024};
Messages.addFlashError(null, FILES_UPLOADED_ERROR, "order.txt", 1024);
// or
Messages.addFlashError(null, FILES_UPLOADED_ERROR, params);

return "B?faces-redirect=true";
}

Now, in page B.xhtml, you will see this message:

// ERROR message
The order.txt file cannot be uploaded ! File size should be smaller than 1,024 bytes.

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 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

JSF BOOKS COLLECTION

Postări populare

OmniFaces/JSF Fans

Follow by Email

Visitors Starting 4 September 2015

Locations of Site Visitors