Class MethodExpressionValidator
- All Implemented Interfaces:
StateHolder,Validator,EventListener
MethodExpressionValidator is a Validator that wraps a
MethodExpression, and it performs validation by executing a method on an object identified by the
MethodExpression.
-
Field Summary
Fields inherited from interface jakarta.faces.validator.Validator
NOT_IN_RANGE_MESSAGE_ID -
Constructor Summary
ConstructorsConstructorDescriptionMethodExpressionValidator(MethodExpression methodExpression) Construct aValidatorthat contains aMethodExpression. -
Method Summary
Modifier and TypeMethodDescriptionbooleanIf true, the Object implementing this interface must not participate in state saving or restoring.voidrestoreState(FacesContext context, Object state) Perform any processing required to restore the state from the entries in the state Object.saveState(FacesContext context) Gets the state of the instance as aSerializableObject.voidsetTransient(boolean transientValue) Denotes whether or not the Object implementing this interface must or must not participate in state saving or restoring.voidvalidate(FacesContext context, UIComponent component, Object value)
-
Constructor Details
-
MethodExpressionValidator
public MethodExpressionValidator() -
MethodExpressionValidator
Construct a
Validatorthat contains aMethodExpression.- Parameters:
methodExpression- the expression to wrap
-
-
Method Details
-
validate
public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException Description copied from interface:ValidatorPerform the correctness checks implemented by this
Validatoragainst the specifiedUIComponent. If any violations are found, aValidatorExceptionwill be thrown containing theFacesMessagedescribing the failure.For a validator to be fully compliant with Version 2 and later of the specification, it must not fail validation on
nullor empty values unless it is specifically intended to addressnullor empty values. An application-wide<context-param>is provided to allow validators designed for Jakarta Server Faces 1.2 to work with Jakarta Server Faces 2 and later. Thejakarta.faces.VALIDATE_EMPTY_FIELDS<context-param>must be set tofalseto enable this backwards compatibility behavior.- Specified by:
validatein interfaceValidator- Parameters:
context- FacesContext for the request we are processingcomponent- UIComponent we are checking for correctnessvalue- the value to validate- Throws:
NullPointerException- ifcontextorcomponentisnullValidatorException- if validation fails
-
saveState
Description copied from interface:StateHolderGets the state of the instance as a
SerializableObject.If the class that implements this interface has references to instances that implement StateHolder (such as a
UIComponentwith event handlers, validators, etc.) this method must call theStateHolder.saveState(jakarta.faces.context.FacesContext)method on all those instances as well. This method must not save the state of children and facets. That is done via theStateManagerThis method must not alter the state of the implementing object. In other words, after executing this code:
Object state = component.saveState(facesContext);componentshould be the same as before executing it.The return from this method must be
Serializable- Specified by:
saveStatein interfaceStateHolder- Parameters:
context- the Faces context.- Returns:
- the saved state.
-
restoreState
Description copied from interface:StateHolderPerform any processing required to restore the state from the entries in the state Object.
If the class that implements this interface has references to instances that also implement StateHolder (such as a
UIComponentwith event handlers, validators, etc.) this method must call theStateHolder.restoreState(jakarta.faces.context.FacesContext, java.lang.Object)method on all those instances as well.If the
stateargument isnull, take no action and return.- Specified by:
restoreStatein interfaceStateHolder- Parameters:
context- the Faces context.state- the state.
-
isTransient
public boolean isTransient()Description copied from interface:StateHolderIf true, the Object implementing this interface must not participate in state saving or restoring.
- Specified by:
isTransientin interfaceStateHolder- Returns:
trueif transient,falseotherwise.
-
setTransient
public void setTransient(boolean transientValue) Description copied from interface:StateHolderDenotes whether or not the Object implementing this interface must or must not participate in state saving or restoring.
- Specified by:
setTransientin interfaceStateHolder- Parameters:
transientValue- boolean passtrueif this Object will not participate in state saving or restoring, otherwise passfalse.
-