|
|
cfproperty
DescriptionDefines
properties and their annotations for a ColdFusion component (CFC).
The properties are used to create complex data types for web services,
while the annotations are used to define Object Relational Model
(ORM) for a CFC. The attributes of this tag are exposed as component
metadata and are subject to inheritance rules.
Syntax<cfproperty
name="name"
default="default value"
displayname="descriptive name"
hint="extended description"
required="false|true"
serializable="true|false"
type="type">
Note: For ORM-related attributes
and their usage, see ColdFusion
ORM in the Developing ColdFusion Applications.
HistoryColdFusion
9: Added attributes for defining Object Relational Model for the
CFC.
Added implicit getters and setters. Added validate and
validateparams attributes.
ColdFusion MX: Added this tag.
Attributes
Attribute
|
Req/Opt
|
Default
|
Description
|
batchsize
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
cascade
|
|
|
catalog
|
|
|
cfc
|
|
|
collectiontype
|
|
|
column
|
|
|
constrained
|
|
|
datatype
|
|
|
default
|
Optional
|
|
If no property value is set when the component
is used for a web service, specifies a default value.
If
this attribute is present, the required attribute
must be set to no or not specified.
For ORM-specific
usage of the default attribute, see ColdFusion
ORM.
|
displayname
|
Optional
|
|
A value to be displayed when using introspection
to show information about the CFC. The value appears in parentheses
following the property name.
|
dynamicInsert
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
dynamicupdate
|
|
|
elementColumn
|
|
|
elementtype
|
|
|
entityname
|
|
|
fetchbatchsize
|
|
|
fieldType
|
|
|
fkcolumn
|
|
|
formula
|
|
|
generator
|
|
|
|
|
Optional
|
|
Specifies whether to generate getter methods
or not. Value are:
|
hint
|
Optional
|
|
Text to be displayed when using introspection
to show information about the CFC. This attribute can be useful
for describing the purpose of the parameter.
|
index
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
insert
|
|
|
inverse
|
|
|
|
|
|
|
joincolumn
|
|
|
lazy
|
|
|
length
|
|
|
linkcatalog
|
|
|
linkschema
|
|
|
linktable
|
|
|
mappedby
|
|
|
missingrowIgnored
|
|
|
name
|
Required
|
|
A string; a property name. Must be a static
value.
|
notnull
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
optimisticLock
|
|
|
optimisticLockgenerated
|
|
|
orderby
|
|
|
orderByreadonly
|
|
|
params
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
persistent
|
|
|
preceision
|
|
|
readonly
|
|
|
readonly
|
|
|
required
|
Optional
|
no
|
Whether the parameter is required:
|
rowid
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
scale
|
|
|
|
|
|
|
Specifies whether to generate setter methods
or not. Possible values are:
|
schema
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
selectbeforeupdate
|
|
|
selectkey
|
|
|
sequence
|
|
|
serializable
|
Optional
|
true
|
Specifies whether this property can be serialized.
If you set this value to false, the property cannot
be serialized, so any changes made are not retained on session replication,
and the property has its default value (if any) on the second server.
Use this attribute to prevent serializaton of properties in CFCs
that are serializable.
|
source
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
structkeycolumn
|
|
|
structkeycolumn
|
|
|
structkeydatatype
|
|
|
structkeyType
|
|
|
table
|
|
|
table
|
|
|
type
|
Optional
|
any
|
A string; identifies the property data type:
any
array
binary
boolean
date
guid: the argument must be a UUID or GUID
of the form xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx where each x is
a character representing a hexadecimal number (0-9A-F).
numeric
query
string
struct
uuid: The argument must be a ColdFusion
UUID of the form xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx where each
x is a character representing a hexadecimal number (0-9A-F).
variableName: a string formatted according
to ColdFusion variable naming conventions.
a component name: if the type attribute
value is not one of the preceding items, ColdFusion treats it as
the name of a ColdFusion component. When the function executes,
it generates an error if the argument that is passed in is not a
CFC with the specified name.
|
unique
|
|
|
For information about these
attributes, see ColdFusion
ORM.
|
uniquekey
|
|
|
update
|
|
|
|
|
|
|
validate
|
Optional
|
|
For more information, see Validate
and validateparams attributes.
|
validateparam
|
Optional
|
|
UsageYou must
position cfproperty tags at the beginning of a
component, above executable code and function definitions.
If
a component is not used as a web service, <cfproperty> only
provides metadata information of the property. It does not define
variables or set values that you can use in your component. However,
it creates implicit setters and getters for the property in the
CFC depending on whether getter/setter attributes are enabled. For
details, see Implicit
Get and Set Functions in Developing ColdFusion Applications.
For
Object Relational Model (ORM), cfproperty is used
to define relational mapping for the property of the CFC. For details,
see ColdFusion
ORM in Developing ColdFusion Applications.
For
web services that you create in ColdFusion, the cfproperty tag
defines complex variables used by the web service.
ExampleThe
following code defines a component in the file address.cfc that
contains properties that represent a street address:
<cfcomponent>
<cfproperty name="Number" type="numeric">
<cfproperty name="Street" type="string">
<cfproperty name="City" type="string">
<cfproperty name="State" type="string">
<cfproperty name="Country" type="string">
</cfcomponent>
This component represents a
complex data type that can be used in a component that is exported
as a web service, such as the following:
<cfcomponent>
<cffunction name="echoAddress" returnType="address" access="remote">
<cfargument name="input" type="address">
<cfreturn arguments.input>
</cffunction>
</cfcomponent>
|