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


marți, 20 octombrie 2015

[OmniFaces utilities (2.0)] Convert an Iterable<E> to a DataModel<E>

[OmniFaces utilities] The iterableToModel() function converts an Iterable<E> to a DataModel<E>. Useful when you want to iterate over an Iterable, which includes any type of Collection (which includes e.g. a Set) in for example <ui:repeat> and <h:dataTable>. When iterating specifically over a Set using the Converters#setToList(Set) is an alternative to this. Use this for more general cases or when the exact collection type is unknown. For those same components Converters#iterableToList(Iterable) is another alternative. Use this when a DataModel is specifically needed.

See also: IterableDataModel

The IterableDataModel can be used to encapsulate nearly every collection type, including Collection derived types such as List and Set. As such this specific DataModel can be used instead of more specific DataModels like ListDataModel and JSF 2.2's CollectionDataModel.

Use of:iterableToModel() in <ui:repeat/>:

<ui:repeat value="#{of:iterableToModel(fooBean.fooSet)}" var="item" varStatus="loop">
 #{item}#{!loop.last ? ', ' : ''}

Render a table only if it has rows:

<h:dataTable value="#{fooBean.fooSet}" rendered="#{of:iterableToModel(fooBean.fooSet).rowCount ne 0}" var="t">

Niciun comentariu :

Trimiteți un comentariu


Postări populare

OmniFaces/JSF Fans

Follow by Email

Visitors Starting 4 September 2015

Locations of Site Visitors