public class ValidateOrder extends ValidateMultipleFields
UIInput
components as specified in
the components
attribute are in the order as specified by the type
attribute which accepts
the following values:
lt
(default): from least to greatest, without duplicates.lte
: from least to greatest, allowing duplicates (equal values next to each other).gt
: from greatest to least, without duplicates.gte
: from greatest to least, allowing duplicates (equal values next to each other).The default message is
{0}: Please fill out the values of all those fields in order
For general usage instructions, refer ValidateMultipleFields
documentation.
This validator has the additional requirement that the to-be-validated values must implement Comparable
.
This validator throws an IllegalArgumentException
when one or more of the values do not implement it. Note
that when this validator is placed before all of the components, then it will only compare the raw unconverted
submitted string values, not the converted object values. If you need to compare by the converted object values,
then you need to place this validator after all of the components.
Modifier and Type | Field and Description |
---|---|
static String |
COMPONENT_TYPE
The standard component type.
|
COMPONENT_FAMILY
BEANINFO_KEY, bindings, COMPOSITE_COMPONENT_TYPE_KEY, COMPOSITE_FACET_NAME, CURRENT_COMPONENT, CURRENT_COMPOSITE_COMPONENT, FACETS_KEY, VIEW_LOCATION_KEY
Constructor and Description |
---|
ValidateOrder()
The default constructor sets the default message.
|
Modifier and Type | Method and Description |
---|---|
String |
getType()
Returns the ordering type to be used.
|
void |
setType(String type)
Sets the ordering type to be used.
|
protected boolean |
validateValues(FacesContext context,
List<UIInput> components,
List<Object> values)
Validate if all values are in specified order.
|
collectComponents, collectValues, getComponents, getMessage, getShowMessageFor, isDisabled, setComponents, setDisabled, setMessage, setShowMessageFor, showMessage, validateComponents, validateHierarchy
encodeChildren, getFamily, getRendersChildren, processDecodes, processUpdates, processValidators
addClientBehavior, addFacesListener, broadcast, clearInitialState, decode, encodeBegin, encodeEnd, findComponent, getAttributes, getChildCount, getChildren, getClientBehaviors, getClientId, getDefaultEventName, getEventNames, getFacesContext, getFacesListeners, getFacet, getFacetCount, getFacets, getFacetsAndChildren, getId, getParent, getRenderer, getRendererType, getValueBinding, invokeOnComponent, isRendered, isTransient, markInitialState, processRestoreState, processSaveState, queueEvent, removeFacesListener, restoreAttachedState, restoreState, saveAttachedState, saveState, setId, setParent, setRendered, setRendererType, setTransient, setValueBinding
encodeAll, getClientId, getCompositeComponentParent, getContainerClientId, getCurrentComponent, getCurrentCompositeComponent, getListenersForEventClass, getNamingContainer, getResourceBundleMap, getStateHelper, getStateHelper, getValueExpression, initialStateMarked, isCompositeComponent, isInView, isVisitable, popComponentFromEL, processEvent, pushComponentToEL, setInView, setValueExpression, subscribeToEvent, unsubscribeFromEvent, visitTree
public static final String COMPONENT_TYPE
public ValidateOrder()
protected boolean validateValues(FacesContext context, List<UIInput> components, List<Object> values)
validateValues
in class ValidateMultipleFields
context
- The faces context to work with.components
- The input components whose values are to be validated.values
- The values of the input components to be validated.true
if validation is successful, otherwise false
(and thus show the message).public String getType()
public void setType(String type)
type
- The ordering type to be used.