Interface Converter<T>
-
- Type Parameters:
T- The generic type of object value to convert.
- All Known Implementing Classes:
BigDecimalConverter,BigIntegerConverter,BooleanConverter,ByteConverter,CharacterConverter,DateTimeConverter,DoubleConverter,EnumConverter,FloatConverter,IntegerConverter,LongConverter,NumberConverter,ShortConverter
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.
Converterimplementations must have a zero-arguments public constructor. In addition, if theConverterclass wishes to have configuration property values saved and restored with the component tree, the implementation must also implementStateHolder.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
Classinstance and theClassof 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
Converterimplementation requires ajava.util.Localeto perform its job, it must obtain thatLocalefrom theUIViewRootof the currentFacesContext, unless theConvertermaintains its ownLocaleas part of its state.If the class implementing
Converterhas aResourceDependencyannotation, the action described inResourceDependencymust be taken whenValueHolder.setConverter(jakarta.faces.convert.Converter)is called. If the class implementingConverterhas aResourceDependenciesannotation, the action described inResourceDependenciesmust be taken whenValueHolder.setConverter(jakarta.faces.convert.Converter)is called.
-
-
Field Summary
Fields Modifier and Type Field Description static StringDATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAMEIf 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".
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description TgetAsObject(FacesContext context, UIComponent component, String value)Convert the specified string value, which is associated with the specifiedUIComponent, into a model data object that is appropriate for being stored during the Process Validations phase of the request processing lifecycle.StringgetAsString(FacesContext context, UIComponent component, T value)Convert the specified model object value, which is associated with the specifiedUIComponent, into a String that is suitable for being included in the response generated during the Render Response phase of the request processing lifeycle.
-
-
-
Field Detail
-
DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME
static final 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".
- Since:
- 2.0
- See Also:
- Constant Field Values
-
-
Method Detail
-
getAsObject
T getAsObject(FacesContext context, UIComponent component, 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.- Parameters:
context-FacesContextfor the request being processedcomponent-UIComponentwith which this model object value is associatedvalue- String value to be converted (may benull)- Returns:
nullif the value to convert isnull, otherwise the result of the conversion- Throws:
ConverterException- if conversion cannot be successfully performedNullPointerException- ifcontextorcomponentisnull
-
getAsString
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.- Parameters:
context-FacesContextfor the request being processedcomponent-UIComponentwith which this model object value is associatedvalue- Model object value to be converted (may benull)- Returns:
- a zero-length String if value is
null, otherwise the result of the conversion - Throws:
ConverterException- if conversion cannot be successfully performedNullPointerException- ifcontextorcomponentisnull
-
-