You can use JSP tags from any JSP tag library. For example, you can use any of the custom tags in the open-source Apache Jakarta Project Taglibs project tag libraries, located at http://jakarta.apache.org/taglibs/index.html. This project consists of a number of individual JSP custom tag libraries for purposes ranging from JNDI access to generating random text strings.
JSP pages use a standard set of tags, such as jsp:forward and jsp:include. You can also import custom JSP tag libraries into a JSP application. You can use both the standard JSP tags and custom JSP tags in ColdFusion pages, as the following sections describe.
Standard JSP tags and ColdFusion
ColdFusion tags provide equivalent features to most standard JSP tags. For example, the cfapplet tag provides the same service as the jsp:plugin tag, and cfobject tag lets you use JavaBeans, as does the jsp:usebean tag. Similarly, you do not use the jsp:getproperty tag because ColdFusion automatically gets properties when you reference them. Therefore, ColdFusion does not support the use of standard JSP tags directly.
However, two standard JSP tags provide functionality that is useful in ColdFusion pages: the forward and include tags invoke JSP pages and Java servlets. The PageContext object described in About GetPageContext and the PageContext object has forward and include methods that provide the same operations. For more information about using these methods see Accessing a JSP page or servlet from a ColdFusion page.
Using custom JSP tags in a ColdFusion page
Follow these steps to use a custom JSP tag on a ColdFusion page:
The following example uses the random tag library from the Apache Jakarta Taglibs project and calls the library's number tag, which initializes a random number generator that uses a secure algorithm to generate a six-digit random number. You get a new random number each time you reference the variable randPass.random.
<cfimport taglib="/WEB-INF/lib/taglibs-random.jar" prefix="myrand"> <myrand:number id="randPass" range="000000-999999" algorithm="SHA1PRNG" provider="SUN" /> <cfset myPassword = randPass.random> <cfoutput> Your password is #myPassword#<br> </cfoutput>
For more information on the Jakarta random tag library and how to use its tags, see the documentation at the Apache Jakarta Taglibs project website, http://jakarta.apache.org/taglibs/index.html. The Taglibs project includes many open source custom tag libraries.