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 javax.faces.component.UIViewRoot
of the current FacesContext, unless the
Converter maintains its own Locale as part
of its state.
If the class implementing
Converter has a javax.faces.application.ResourceDependency annotation, the action
described in ResourceDependency must be taken when
javax.faces.component.ValueHolder#setConverter is called.
If the class implementing Converter has a javax.faces.application.ResourceDependencies annotation, the
action described in ResourceDependencies must be taken
when javax.faces.component.ValueHolder#setConverter is called.
| Modifier and Type | Field and Description |
|---|---|
| public 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 javax.faces.convert.DateTimeConverter instances must be equal to TimeZone.getDefault() instead of "GMT". |
| Modifier and Type | Method and Description |
|---|---|
| public T | Returns: null if the value to convert is null,
otherwise the result of the conversionFacesContext for the request being processedUIComponent with which this model object
value is associatedString value to be converted (may be value)null)Convert the specified string value, which is associated with
the specified |
| public String | Returns: a zero-length String if value isnull,
otherwise the result of the conversionFacesContext for the request being processedUIComponent with which this model object
value is associatedModel object value to be converted
(may be value)null)Convert the specified model object value, which is associated with
the specified |
| DATETIMECONVERTER_DEFAULT_TIMEZONE_IS_SYSTEM_TIMEZONE_PARAM_NAME | back to summary |
|---|---|
| public 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 javax.faces.convert.DateTimeConverter instances must be equal to TimeZone.getDefault() instead of "GMT".
| |
| getAsObject | back to summary |
|---|---|
| public T getAsObject(FacesContext context, UIComponent component, String value) Convert the specified string value, which is associated with
the specified
| |
| getAsString | back to summary |
|---|---|
| public String getAsString(FacesContext context, UIComponent component, T value) Convert the specified model object value, which is associated with
the specified
| |