Package org.apache.struts2.util

# Class StrutsTypeConverter

java.lang.Object
org.apache.struts2.conversion.impl.DefaultTypeConverter
org.apache.struts2.util.StrutsTypeConverter

All Implemented Interfaces:
  `TypeConverter`

public abstract class StrutsTypeConverter extends DefaultTypeConverter

Base class for type converters used in Struts. This class provides two abstract methods that are used to convert both to and from strings -- the critical functionality that is core to Struts's type conversion system.

Type converters do not have to use this class. It is merely a helper base class, although it is recommended that you use this class as it provides the common type conversion contract required for all web-based type conversion.

There's a hook (fall back method) called `performFallbackConversion` of which could be used to perform some fallback conversion if `convertValue` method of this failed. By default it just ask its super class (Ognl's DefaultTypeConverter) to do the conversion.

To allow the framework to recognize that a conversion error has occurred, throw an StrutsException or preferable a TypeConversionException.

- ## Field Summary

  ### Fields inherited from class org.apache.struts2.conversion.impl.DefaultTypeConverter

  `MILLISECOND_FORMAT`

  ### Fields inherited from interface org.apache.struts2.conversion.TypeConverter

  `NO_CONVERSION_POSSIBLE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StrutsTypeConverter()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract Object`
  `convertFromString(Map context, String[] values, Class toClass)`
  Converts one or more String values to the specified class.
  `abstract String`
  `convertToString(Map context, Object o)`
  Converts the specified object to a String.
  `Object`
  `convertValue(Map context, Object o, Class toClass)`
  `protected Object`
  `performFallbackConversion(Map context, Object o, Class toClass)`
  Hook to perform a fallback conversion if every default options failed.

  ### Methods inherited from class org.apache.struts2.conversion.impl.DefaultTypeConverter

  `bigDecValue, bigIntValue, booleanValue, convertValue, convertValue, doubleValue, enumValue, getLocale, getTypeConverter, longValue, setContainer, stringValue, stringValue`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### StrutsTypeConverter

    public StrutsTypeConverter()

- ## Method Details

  - ### convertValue

    public Object convertValue(Map context, Object o, Class toClass)
    Overrides:
      `convertValue` in class `DefaultTypeConverter`

  - ### performFallbackConversion

    protected Object performFallbackConversion(Map context, Object o, Class toClass)
    Hook to perform a fallback conversion if every default options failed. By default this will ask Ognl's DefaultTypeConverter (of which this class extends) to perform the conversion.
    Parameters:
      `context` - the action context
      `o` - object to be converted
      `toClass` - the class to convert to
    Returns:
      The fallback conversion

  - ### convertFromString

    public abstract Object convertFromString(Map context, String[] values, Class toClass)
    Converts one or more String values to the specified class.
    Parameters:
      `context` - the action context
      `values` - the String values to be converted, such as those submitted from an HTML form
      `toClass` - the class to convert to
    Returns:
      the converted object

  - ### convertToString

    public abstract String convertToString(Map context, Object o)
    Converts the specified object to a String.
    Parameters:
      `context` - the action context
      `o` - the object to be converted
    Returns:
      the converted String