T - The generic type of object value to convert.public interface Converter<T>
Converter is an interface describing a Java class that can perform Object-to-String and String-to-Object conversions between model data objects and a String representation of those objects that is suitable for rendering.
Converter implementations must have a zero-arguments public constructor. In addition, if the
Converter class wishes to have configuration property values saved and restored with the component tree, the
implementation must also implement StateHolder.
Starting with version 1.2 of the specification, an exception to the above zero-arguments constructor requirement has
been introduced. If a converter has a single argument constructor that takes a Class instance and the
Class of the data to be converted is known at converter instantiation time, this constructor must be
used to instantiate the converter instead of the zero-argument version. This enables the per-class conversion of Java
enumerated types.
If any Converter implementation requires a java.util.Locale to perform its job, it must
obtain that Locale from the UIViewRoot of the current
FacesContext, unless the Converter maintains its own Locale as part of its state.
If the class implementing Converter has a ResourceDependency
annotation, the action described in ResourceDependency must be taken when
ValueHolder.setConverter(jakarta.faces.convert.Converter) is called. If the class implementing Converter
has a ResourceDependencies annotation, the action described in
ResourceDependencies must be taken when ValueHolder.setConverter(jakarta.faces.convert.Converter) is
called.
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME
If this param is set, and calling toLowerCase().equals("true") on a String representation of its value returns true, Application.createConverter() must guarantee that the default for the timezone of all jakarta.faces.convert.DateTimeConverter instances must be equal to TimeZone.getDefault() instead of "GMT". |
| Modifier and Type | Method and Description |
|---|---|
T |
getAsObject(FacesContext context,
UIComponent component,
java.lang.String value)
Convert the specified string value, which is associated with the specified
UIComponent, into a model data object that is appropriate for being stored during the
Process Validations phase of the request processing lifecycle. |
java.lang.String |
getAsString(FacesContext context,
UIComponent component,
T value)
Convert the specified model object value, which is associated with the specified
UIComponent, into a String
that is suitable for being included in the response generated during the Render Response phase of the
request processing lifeycle. |
static final java.lang.String DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME
If this param is set, and calling toLowerCase().equals("true") on a String representation of its value returns true, Application.createConverter() must guarantee that the default for the timezone of all jakarta.faces.convert.DateTimeConverter instances must be equal to TimeZone.getDefault() instead of "GMT".
T getAsObject(FacesContext context, UIComponent component, java.lang.String value)
Convert the specified string value, which is associated with the specified
UIComponent, into a model data object that is appropriate for being stored during the
Process Validations phase of the request processing lifecycle.
context - FacesContext for the request being processedcomponent - UIComponent with which this model object value is associatedvalue - String value to be converted (may be null)null if the value to convert is null, otherwise the result of the conversionConverterException - if conversion cannot be successfully performedjava.lang.NullPointerException - if context or component is nulljava.lang.String getAsString(FacesContext context, UIComponent component, T value)
Convert the specified model object value, which is associated with the specified UIComponent, into a String
that is suitable for being included in the response generated during the Render Response phase of the
request processing lifeycle.
context - FacesContext for the request being processedcomponent - UIComponent with which this model object value is associatedvalue - Model object value to be converted (may be null)null, otherwise the result of the conversionConverterException - if conversion cannot be successfully performedjava.lang.NullPointerException - if context or component is null