public enum FieldType extends java.lang.Enum<FieldType> implements ValueEnum
databound\n components understand and treat specially (using type-specific form controls, validators, formatters, sorting logic, etc). You can declare custom types via SimpleType.create(), with settings that will influence DataBound components. You can also create your own subclasses of databound components to add further custom, reusable behaviors based on field.type.
field.type can also be the ID of another DataSource, which allows you to model nested structures such as XML documents (in fact, XMLTools.loadXMLSchema() models XML schema in this way). Nested DataSource declarations affect how XML and JSON data is deserialized into JavaScript objects in the client-side integration pipeline, so that you can load complex XML documents and have them deserialized into a correctly typed nested data structure.
Note: to declare related but separate objects, as in an "Account" object that can be related to both a "Contact" object and "Order" objects, use DataSourceField.foreignKey, not a nested structure declaration.
| Enum Constant and Description |
|---|
ANY Fields of this type can contain any data value and have no default formatting or validation behavior. |
BINARY Arbitrary binary data. |
BOOLEAN A boolean value, e.g. |
CREATOR Fields of this type are automatically populated by the Smart GWT Server with the current authenticated userId as part of "add" operations. |
CREATORTIMESTAMP Fields of this type are automatically populated by the Smart GWT Server with the current date and time as part of an "add" operation (when the record is first created). |
CUSTOM Synonymous with "any". |
DATE A logical date, with no time value (such as a holiday or birthday). |
DATETIME A date and time, accurate to the second. |
ENUM A text value constrained to a set of legal values specified by the field's valueMap, as though a ValidatorType of "isOneOf" had been declared. |
FLOAT A floating point (decimal) number, e.g. |
IMAGE A string representing a well-formed URL that points to an image. |
IMAGEFILE Binary data comprising an image. |
INTEGER A whole number, e.g. |
INTENUM An enum whose values are numeric. |
LINK A string representing a well-formed URL. |
LOCALECURRENCY A float number with locale-based formatting and using currency symbol, e.g. |
LOCALEFLOAT A float number with locale-based formatting, e.g. |
LOCALEINT An integer number with locale-based formatting, e.g. |
MODIFIER Fields of this type are automatically populated by the Smart GWT Server with the current authenticated userId as part of "add" and "update" operations. |
MODIFIERTIMESTAMP Fields of this type are automatically populated by the Smart GWT Server with the current date and time as part of "add" and "update" operations. |
NTEXT A special field type specifically for use with Unicode data in conjunction with the Microsoft SQL Server database. |
PASSWORD Same as "text", but causes PasswordItem to be used by default for editing (hides typed-in value), and defaults storeWithhash to "bcrypt" (affecting server operations). |
PHONENUMBER A telephone number. |
SEQUENCE If you are using the Smart GWT SQL datasource connector, a sequence is a unique, increasing whole number, incremented whenever a new record is added. |
TEXT Generic text, e.g. |
TIME A time of day, with no date. |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String | getValue() |
static FieldType | valueOf(java.lang.String name) Returns the enum constant of this type with the specified name. |
static FieldType[] | values() Returns an array containing the constants of this enum type, in the order they are declared. |
public static final FieldType TEXT
"John Doe". This is the default field type. Use field.length to set length. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "text".
public static final FieldType BOOLEAN
true If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "boolean".
public static final FieldType INTEGER
123 If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "integer".
public static final FieldType FLOAT
1.23 If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "float".
public static final FieldType DATE
Date object where time values are ignored. See DateFormatAndStorage for more information on date display and serialization formats. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "date".
public static final FieldType TIME
Date object in UTC/GMT by default (see also DateFormatAndStorage and the String class). If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "time".
public static final FieldType DATETIME
second. Represented on the client as a JavaScript Date object. See also DateFormatAndStorage. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "datetime".
public static final FieldType ENUM
valueMap, as though a ValidatorType of "isOneOf" had been declared. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "enum".
public static final FieldType INTENUM
If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "intEnum".
public static final FieldType SEQUENCE
sequence is a unique, increasing whole number, incremented whenever a new record is added. Otherwise, sequence behaves identically to integer. This type is typically used with field.primaryKey to auto-generate unique primary keys. See also DataSourceField.sequenceName and DataSource.sequenceMode If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "sequence".
public static final FieldType LINK
If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "link".
public static final FieldType IMAGE
If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "image".
public static final FieldType BINARY
name attribute of this field. These fields are marked as DataSourceField.hidden:true to suppress their rendering by default. You can show one or more of these fields by specifying the field with a hidden:false override in the fields array of the databound component. Stream / view file support for custom DataSources: a custom DataSource or DMI must implement the "viewFile" and "downloadFile" operationTypes and return a single Record with a byte[] as the field value for the binary field. For more detail see the overview of Binary Fields. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "binary".
public static final FieldType IMAGEFILE
ViewFileItem to be used when the field is displayed in a form, allowing the image to optionally be displayed inline. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "imageFile".
public static final FieldType ANY
parent type for SimpleTypes where you do not want any of the standard validation or formatting logic to be inherited from the standard built-in types. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "any".
public static final FieldType CUSTOM
If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "custom".
public static final FieldType MODIFIER
writeToGeneratedFields). Note that the "authenticated user" can be set explicitly on the server-side RPCManager using the setUserId() method, or it can come from the servlet API if you are using its built-in authentication scheme. See the server-side Javadocs for RPCManager. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "modifier".
public static final FieldType MODIFIERTIMESTAMP
writeToGeneratedFields). If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "modifierTimestamp".
public static final FieldType CREATOR
writeToGeneratedFields). The notes about type "modifier" also apply to fields of this type. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "creator".
public static final FieldType CREATORTIMESTAMP
writeToGeneratedFields). If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "creatorTimestamp".
public static final FieldType PASSWORD
PasswordItem to be used by default for editing (hides typed-in value), and defaults storeWithhash to "bcrypt" (affecting server operations). If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "password".
public static final FieldType NTEXT
sqlStorageStrategy "ntext"; other than that, this type is identical to "text" If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "ntext".
public static final FieldType LOCALEINT
12,345,678. See Localized Number Formatting for more info. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "localeInt".
public static final FieldType LOCALEFLOAT
12,345.67. See Localized Number Formatting for more info. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "localeFloat".
public static final FieldType LOCALECURRENCY
$12,345.67. See Localized Number Formatting for more info. If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "localeCurrency".
public static final FieldType PHONENUMBER
FormItem.browserInputType "tel" to hint to the device to restrict input. On most mobile devices that have software keyboards, this cause a specialized keyboard to appear which only allows entry of normal phone numbers. When displayed read-only, a "phoneNumber" renders as an HTML link with the "tel:" URL scheme, which will invoke the native phone dialing interface on most mobile devices. In addition, the CSS style "sc_phoneNumber" is applied. By default, "phoneNumber" fields do not include validators, however the following validator definition would limit to digits, dashes and the "+" character: xml:
<validator type="regexp" expression="^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$" errorMessage="Phone number should be in the correct format e.g. +#(###)###-##-##" />
or directly in Java:
RegExpValidator v = new RegExpValidator();
v.setType(ValidatorType.REGEXP);
v.setErrorMessage("Phone number should be in the correct format e.g. +#(###)###-##-##");
v.setExpression("^(\\(?\\+?[0-9]\*\)?)?[0-9_\\- \\(\\)]*$");
and adding "#" and "*" to the regular expressions above would allow for users to enter special keys sometimes used for extension numbers or pauses If this enumerated value is used in a Component XML file or server-side DataSource descriptor (.ds.xml file), use the value "phoneNumber".
public static FieldType[] values()
for (FieldType c : FieldType.values()) System.out.println(c);
public static FieldType valueOf(java.lang.String name)
name - the name of the enum constant to be returned.java.lang.IllegalArgumentException - if this enum type has no constant with the specified namejava.lang.NullPointerException - if the argument is null