<cfcomponent>
Creates and defines a component object; encloses functionality that you build in CFML and enclose within <cffunction> tags.
This tag contains one or more cffunction tags that define methods.
Code within the body of this tag, other than cffunction tags, is executed when the component is instantiated.
This tag must have a body.
This tag is also supported within <cfscript>
<cfcomponent
accessors=boolean
synchronized=boolean
persistent=boolean
extends=string
implements=string
modifier=none|final|abstract
displayName=string
hint=string
output=boolean
style=string
namespace=string
servicePortName=string
serviceAddress=string
portTypeName=string
bindingName=string
wsdlFile=string
alias=string
mappedSuperClass=boolean
javasettings=string
><!--- body ---></cfcomponent>
Attribute | Description |
---|---|
accessors
boolean, optional
|
If set to true, enables implicit getters and setters for the component's properties. For persistent CFCs, accessors are always enabled. |
synchronized
boolean, optional
|
If set to true all calls to an instance of a component are synchronized. This setting allows a method to be executed only by one single thread at a time. |
persistent
boolean, optional
|
Specifies CFC is persistent or not |
extends
string, optional
|
Name of parent component from which to inherit methods and properties. |
implements
string, optional
|
Lists the interfaces that the component implements, specifying the set of functions that the component must provide. |
modifier
string, optional
|
Defines the type of component: |
displayName
string, optional
|
A string to be displayed when using introspection to show information about the CFC. The information appears on the heading, following the component name. If the style attribute is set to document, the displayname attribute is used as the name of the service element in the WSDL. Alias: display |
hint
string, optional
|
Text that displays when you use introspection to show information about the CFC. The hint attribute value appears below the component name heading. Use this attribute to describe the purpose of the component. |
output
boolean, optional
|
|
bindingName
string, optional
|
Specifies the name of the binding element in the WSDL. This attribute applies only when style="document". |
javasettings
string, optional
|
Specifies custom When provided, these settings override any server level JavaSettings that would otherwise be applied. Since 6.2 Lucee supports specifying Maven dependencies JavaSettings in Application.cfc, Components and CFConfig.json |
Unimplemented Attribute(s)
Examples
Tag based syntax
<cfcomponent displayname="Hello" output="false" style="document" hint="hint for Hello">
<!--- functions and other values here -->
</cfcomponent>
Script based syntax
component displayname="Script Widget" output="false" {
// functions and properties here
}
See also
- Components (CFCs)
- Core CFML Language
- Static
- Convert a CFML Function/Component to use in Java
- Inline Components
- Java - Explicit Casting of a Component to a Specific Interface
- JavaSettings in Application.cfc, Components and CFConfig.json
- New Operator in Lucee
- Sub Components
- <cfargument>
- <cffunction>
- <cfinterface>
- <cfinvoke>
- <cfinvokeargument>
- <cfobject>
- <cfproperty>
- <cfstatic>
- Search Issue Tracker
- Search Lucee Test Cases (good for further, detailed examples)