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, 24 februarie 2015

[OmniFaces utilities (2.0)] Validate if the given component has a parent of the given parent type

[OmniFaces utilities] The validateHasParent() method validates if the given component has a parent of the given parent type.

As you can see, this OmniFaces utilities uses another OmniFaces utilities, named getClosestParent(). The later was presented in "[OmniFaces utilities (2.0)]Get from the given component the closest parent of the given parent type".


You can use this method in a custom validator. Per example, let's have this JSF snippet:

<h:form id="formId">
 <h:inputText id="nameId" value="#{}" validator="myValidator"/>
 <h:commandButton id="btnId" value="Save" action="#{}"/>

Now, in MyValidator we can perform the following validations:
public void validate(FacesContext fc, UIComponent uic, Object o) throws ValidatorException {
 // validate if the given component has a parent of type UIForm
 Components.validateHasParent(uic, UIForm.class);
 // validate if the given component has a parent of type UICommand
 Components.validateHasParent(uic, UICommand.class);

The first check will be a success, while the validation will fail at second check, since the uic component (aka UIInput) doesn't have a parent of type UICommand. So, you will get an exception like below:

Niciun comentariu :

Trimiteți un comentariu


Postări populare

OmniFaces/JSF Fans

Visitors Starting 4 September 2015

Locations of Site Visitors