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


sâmbătă, 30 mai 2015

[OmniFaces utilities 2.0] Working with OmniFaces faces message builder

[OmniFaces utilities] The Message class represents the OmniFaces faces message builder.

See also: Faces#getFlash()

In order to use the OmniFaces faces message builder, we start from a  faces message with the default INFO severity and the given message body which is formatted with the given parameters as summary message. This message can be obtained via Messages#create() method as below:

import org.omnifaces.util.Messages;
import org.omnifaces.util.Messages.Message;
private static final String FILES_UPLOADED_ERROR = "The {0} file cannot be uploaded ! File size should be smaller than {1} bytes !";
Message msg = Messages.create(FILES_UPLOADED_ERROR, "order.txt", 1024);

Now, we can:
- set the detail message via Message#detail(String, Object...)
- change the default INFO severity via Message#warn(), Message#error(), or Message#fatal()
- make it a flash message via Message#flash()
- add it to the faces context via Message#add(String) to add it for a specific client ID
- or, add it to the faces context via Message#add() to add it as a global message

For example, we can change the default INFO severity in ERROR, make it a flash message and add it in the faces context as a global message, as below:

Or, you can put everything in a compact line:

Messages.create(FILES_UPLOADED_ERROR, "order.txt", 1024).error().flash().add();

The resulted message will be:

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


Postări populare

OmniFaces/JSF Fans

Follow by Email

Visitors Starting 4 September 2015

Locations of Site Visitors