You can use the cfimport tag
to import either of the following:
All ColdFusion pages in a directory, as a tag custom tag library.
A Java Server Page (JSP) tag library. A JSP tag library is a packaged set of tag handlers that conform to the JSP 1.1 tag extension API.
Application framework tags
<cfimport
prefix = "custom"
taglib = "tag library location">
ColdFusion MX: Added this tag.
Attribute |
Req/Opt |
Default |
Description |
|---|---|---|---|
|
Required |
Tag library URI. The path must be relative to the web root (and start with /), the current page location, or a directory specified in the Administrator ColdFusion mappings page.
Note: You must put JSP custom tag libraries in the /WEB-INF/lib directory. This limitation does not apply to ColdFusion pages. |
|
|
Required |
Prefix by which to access the imported custom CFML tags JSP tags. If you import a CFML custom tag directory
and specify an empty value, |
The following example imports the tags from the directory myCustomTags:
<cfimport
prefix="mytags"
taglib="myCustomTags">
You can import multiple tag libraries using one prefix. If there are duplicate tags in a library, the first one takes precedence.
JSP tags have fixed
attributes; however, if the tag supports runtime attribute expressions,
most tag libraries support the use of the syntax #expressions#.
To
reference a JSP tag in a CFML page, use the syntax <prefix:tagname>.
Set the prefix value in the prefix attribute.
Put a JSP tag library JAR file (for example, myjsptags.jar) into the ColdFusion server directory wwwroot/WEB-INF/lib. If the tag library has a separate TLD file, put it in the same directory as the JAR file.
At the top of a CFML page, insert code such as the following:
<cfimport
prefix="mytags"
taglib="/WEB-INF/lib/myjsptags.jar">
To reference a JSP tag from a JAR file, use the following syntax:
<cfoutput>
<mytags:helloTag message="#mymessage#" />
<cfoutput>
The cfimport tag
must be on the page that uses the imported tags. For example, if
you use a cfimport tag on a page that you include
with the cfinclude call, you cannot use the imported
tags on the page that has the cfinclude tag. Similarly,
if you have a cfimport tag on your Application.cfm page,
the imported tags are available on the Application.cfm page only,
not on the other pages in the application. ColdFusion does not throw
an error in these situations, but the imported tags do not run.
You
cannot use the cfimport tag to suppress output
from a tag library.
For more information, see the Java Server Page 1.1 specification.
<h3>cfimport example</h3>
<p>This example uses the random JSP tag library that is available from the
Jakarta Taglibs project, at http://jakarta.apache.org/taglibs/</p>
<cfimport taglib="/WEB-INF/lib/taglibs-random.jar" prefix="randomnum">
<randomnum:number id="randPass" range="000000-999999" algorithm="SHA1PRNG" provider="SUN"/>
<cfset myPassword = randPass.random>
<cfoutput>
Your password is #myPassword#<br>
</cfoutput>