User Guide

Table Of Contents
920 Chapter 37: Integrating J2EE and Java Elements in CFML Applications
About GetPageContext and the PageContext object
Because ColdFusion pages are J2EE servlet pages, all ColdFusion pages have an underlying Java
PageContext object. CFML includes the
GetPageContext function that you can then use in your
ColdFusion page.
The PageContext object exposes a number of fields and methods that can be useful in J2EE
integration. In particular, it includes the
include and forward methods that provide the
equivalent of the corresponding standard JSP tags.
This chapter describes how to use the
include and forward PageContext methods for calling
JSP pages and servlets. It does not discuss the PageContext object in general. For more
information on the object, see Java documentation. You can find the Javadoc description of this
class at http://java.sun.com/j2ee/1.4/docs/api/javax/servlet/jsp/PageContext.html.
About CFML variables and Java variables
Because ColdFusion variables are case-independent and Java variables are case-dependent, you
must be careful about variable names. Use the following rules and guidelines when sharing data
between ColdFusion and Java code, including JSP pages and servlets.
Rules
If you use mixed case variables, all variable names must be unique, independent of case. For
example, you must not have two Java variables, MyVariable and MYVARIABLE. ColdFusion
cannot distinguish between the two.
If you share Request scope variables between a CFML page and a JSP page or servlet, all shared
Request scope variable names must be all-lowercase in the JSP page or servlet. Mixed case or all-
uppercase variables will cause null pointer exceptions if CFML refers to these variables.
If you share Application or Session scope variables between a CFML page and a JSP page or
servlet and use a named ColdFusion application (the common usage), the variables on the JSP
page or servlet are case-independent.
If you share the Application or Session scope variables between a CFML page and a JSP page
or servlet, and use an unnamed ColdFusion application, the variable names in the JSP page or
servlet must be all lowercase.
When you specify a class name in the cfobject tag or CreateObject function, the name
must be case-correct.
Guidelines
You can prevent problems by consistently using all-lowercase variable names.
In your CFML, use the same case as you do in your Java or JSP. Doing so does not change how
the application works, but does help prevent confusion.