DateTimeConverter (Java EE 5 SDK)

Java

Java EE 5 SDK

深圳电信培训中心.徐海蛟老师.


javax.faces.convert Class DateTimeConverter

java.lang.Object
  extended by javax.faces.convert.DateTimeConverter
所有已实现的接口:
StateHolder, Converter

public class DateTimeConverter
extends Object
implements Converter, StateHolder

Converter implementation for java.util.Date values.

The getAsObject() method parses a String into a java.util.Date, according to the following algorithm:

  • If the specified String is null, return a null. Otherwise, trim leading and trailing whitespace before proceeding.
  • If the specified String - after trimming - has a zero length, return null.
  • If the locale property is not null, use that Locale for managing parsing. Otherwise, use the Locale from the UIViewRoot.
  • If a pattern has been specified, its syntax must conform the rules specified by java.text.SimpleDateFormat. Such a pattern will be used to parse, and the type, dateStyle, and timeStyle properties will be ignored.
  • If a pattern has not been specified, parsing will be based on the type property, which expects a date value, a time value, or both. Any date and time values included will be parsed in accordance to the styles specified by dateStyle and timeStyle, respectively.
  • If a timezone has been specified, it must be passed to the underlying DateFormat instance. Otherwise the "GMT" timezone is used.
  • In all cases, parsing must be non-lenient; the given string must strictly adhere to the parsing format.

The getAsString() method expects a value of type java.util.Date (or a subclass), and creates a formatted String according to the following algorithm:

  • If the specified value is null, return a zero-length String.
  • If the specified value is a String, return it unmodified.
  • If the locale property is not null, use that Locale for managing formatting. Otherwise, use the Locale from the UIViewRoot.
  • If a timezone has been specified, it must be passed to the underlying DateFormat instance. Otherwise the "GMT" timezone is used.
  • If a pattern has been specified, its syntax must conform the rules specified by java.text.SimpleDateFormat. Such a pattern will be used to format, and the type, dateStyle, and timeStyle properties will be ignored.
  • If a pattern has not been specified, formatting will be based on the type property, which includes a date value, a time value, or both into the formatted String. Any date and time values included will be formatted in accordance to the styles specified by dateStyle and timeStyle, respectively.


字段摘要
static String CONVERTER_ID
          The standard converter id for this converter.
static String DATE_ID
          The message identifier of the FacesMessage to be created if the conversion to Date fails.
static String DATETIME_ID
          The message identifier of the FacesMessage to be created if the conversion to DateTime fails.
static String STRING_ID
          The message identifier of the FacesMessage to be created if the conversion of the DateTime value to String fails.
static String TIME_ID
          The message identifier of the FacesMessage to be created if the conversion to Time fails.
 
构造器摘要
DateTimeConverter()
           
 
方法摘要
 Object 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 Apply Request Values phase of the request processing lifecycle.
 String getAsString(FacesContext context, UIComponent component, Object 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.
 String getDateStyle()
          Return the style to be used to format or parse dates.
 Locale getLocale()
          Return the Locale to be used when parsing or formatting dates and times.
 String getPattern()
          Return the format pattern to be used when formatting and parsing dates and times.
 String getTimeStyle()
          Return the style to be used to format or parse times.
 TimeZone getTimeZone()
          Return the TimeZone used to interpret a time value.
 String getType()
          Return the type of value to be formatted or parsed.
 boolean isTransient()
          If true, the Object implementing this interface must not participate in state saving or restoring.
 void restoreState(FacesContext context, Object state)
           Perform any processing required to restore the state from the entries in the state Object.
 Object saveState(FacesContext context)
           Gets the state of the instance as a Serializable Object.
 void setDateStyle(String dateStyle)
          Set the style to be used to format or parse dates.
 void setLocale(Locale locale)
          Set the Locale to be used when parsing or formatting dates and times.
 void setPattern(String pattern)
          Set the format pattern to be used when formatting and parsing dates and times.
 void setTimeStyle(String timeStyle)
          Set the style to be used to format or parse times.
 void setTimeZone(TimeZone timeZone)
          Set the TimeZone used to interpret a time value.
 void setTransient(boolean transientFlag)
          Denotes whether or not the Object implementing this interface must or must not participate in state saving or restoring.
 void setType(String type)
          Set the type of value to be formatted or parsed.
 
类方法继承 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

CONVERTER_ID

public static final String CONVERTER_ID

The standard converter id for this converter.

另请参见:
常量字段


DATE_ID

public static final String DATE_ID

The message identifier of the FacesMessage to be created if the conversion to Date fails. The message format string for this message may optionally include the following placeholders:

  • {0} replaced by the unconverted value.
  • {1} replaced by an example value.
  • {2} replaced by a String whose value is the label of the input component that produced this message.

另请参见:
常量字段


TIME_ID

public static final String TIME_ID

The message identifier of the FacesMessage to be created if the conversion to Time fails. The message format string for this message may optionally include the following placeholders:

  • {0} replaced by the unconverted value.
  • {1} replaced by an example value.
  • {2} replaced by a String whose value is the label of the input component that produced this message.

另请参见:
常量字段


DATETIME_ID

public static final String DATETIME_ID

The message identifier of the FacesMessage to be created if the conversion to DateTime fails. The message format string for this message may optionally include the following placeholders:

  • {0} replaced by the unconverted value.
  • {1} replaced by an example value.
  • {2} replaced by a String whose value is the label of the input component that produced this message.

另请参见:
常量字段


STRING_ID

public static final String STRING_ID

The message identifier of the FacesMessage to be created if the conversion of the DateTime value to String fails. The message format string for this message may optionally include the following placeholders:

  • {0} relaced by the unconverted value.
  • {1} replaced by a String whose value is the label of the input component that produced this message.

另请参见:
常量字段

构造器详细信息

DateTimeConverter

public DateTimeConverter()
方法详细信息

getDateStyle

public String getDateStyle()

Return the style to be used to format or parse dates. If not set, the default value, default, is returned.


setDateStyle

public void setDateStyle(String dateStyle)

Set the style to be used to format or parse dates. Valid values are default, short, medium, long, and full. An invalid value will cause a ConverterException when getAsObject() or getAsString() is called.

参数:
dateStyle - The new style code

getLocale

public Locale getLocale()

Return the Locale to be used when parsing or formatting dates and times. If not explicitly set, the Locale stored in the UIViewRoot for the current request is returned.


setLocale

public void setLocale(Locale locale)

Set the Locale to be used when parsing or formatting dates and times. If set to null, the Locale stored in the UIViewRoot for the current request will be utilized.

参数:
locale - The new Locale (or null)

getPattern

public String getPattern()

Return the format pattern to be used when formatting and parsing dates and times.


setPattern

public void setPattern(String pattern)

Set the format pattern to be used when formatting and parsing dates and times. Valid values are those supported by java.text.SimpleDateFormat. An invalid value will cause a ConverterException when getAsObject() or getAsString() is called.

参数:
pattern - The new format pattern

getTimeStyle

public String getTimeStyle()

Return the style to be used to format or parse times. If not set, the default value, default, is returned.


setTimeStyle

public void setTimeStyle(String timeStyle)

Set the style to be used to format or parse times. Valid values are default, short, medium, long, and full. An invalid value will cause a ConverterException when getAsObject() or getAsString() is called.

参数:
timeStyle - The new style code

getTimeZone

public TimeZone getTimeZone()

Return the TimeZone used to interpret a time value. If not explicitly set, the default time zone of GMT returned.


setTimeZone

public void setTimeZone(TimeZone timeZone)

Set the TimeZone used to interpret a time value.

参数:
timeZone - The new time zone

getType

public String getType()

Return the type of value to be formatted or parsed. If not explicitly set, the default type, date is returned.


setType

public void setType(String type)

Set the type of value to be formatted or parsed. Valid values are both, date, or time. An invalid value will cause a ConverterException when getAsObject() or getAsString() is called.

参数:
type - The new date style

getAsObject

public Object getAsObject(FacesContext context,
                          UIComponent component,
                          String value)
Description copied from interface: Converter

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 Apply Request Values phase of the request processing lifecycle.

规范说明:
getAsObject in interface Converter
参数:
context - FacesContext for the request being processed
component - UIComponent with which this model object value is associated
value - String value to be converted (may be null)
返回:
null if the value to convert is null, otherwise the result of the conversion
抛出异常:
ConverterException - if conversion cannot be successfully performed
NullPointerException - if context or component is null

getAsString

public String getAsString(FacesContext context,
                          UIComponent component,
                          Object value)
Description copied from interface: Converter

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.

规范说明:
getAsString in interface Converter
参数:
context - FacesContext for the request being processed
component - UIComponent with which this model object value is associated
value - Model object value to be converted (may be null)
返回:
a zero-length String if value is null, otherwise the result of the conversion
抛出异常:
ConverterException - if conversion cannot be successfully performed
NullPointerException - if context or component is null

saveState

public Object saveState(FacesContext context)
Description copied from interface: StateHolder

Gets the state of the instance as a Serializable Object.

If the class that implements this interface has references to instances that implement StateHolder (such as a UIComponent with event handlers, validators, etc.) this method must call the StateHolder.saveState(javax.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 the StateManager

This method must not alter the state of the implementing object. In other words, after executing this code:

 Object state = component.saveState(facesContext);
 

component should be the same as before executing it.

The return from this method must be Serializable

规范说明:
saveState in interface StateHolder

restoreState

public void restoreState(FacesContext context,
                         Object state)
Description copied from interface: StateHolder

Perform 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 UIComponent with event handlers, validators, etc.) this method must call the StateHolder.restoreState(javax.faces.context.FacesContext, java.lang.Object) method on all those instances as well.

规范说明:
restoreState in interface StateHolder

isTransient

public boolean isTransient()
Description copied from interface: StateHolder

If true, the Object implementing this interface must not participate in state saving or restoring.

规范说明:
isTransient in interface StateHolder

setTransient

public void setTransient(boolean transientFlag)
Description copied from interface: StateHolder

Denotes whether or not the Object implementing this interface must or must not participate in state saving or restoring.

规范说明:
setTransient in interface StateHolder
参数:
transientFlag - boolean pass true if this Object will participate in state saving or restoring, otherwise pass false.

Java EE 5 SDK

深圳电信培训中心.徐海蛟老师.


提交错误或意见

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。深圳电信培训中心.徐海蛟老师教学参考.