You are on page 1of 6

brought to you by...

Get More Refcardz! Visit


Introducing Adobe ColdFusion Builder
Installing Getting Started with
Starting a New Project

Adobe ColdFusion Builder


Connecting to Servers ® ® ™
Introduction to Views
Working with Code and more...
By Terry Ryan
• Give your project a name: SampleProject
INTRODUCING ADOBE COLDFUSION BUILDER • Uncheck the Use Default Location check box
• Hit the Browse button and navigate to your
ColdFusion Builder is Adobe’s new IDE designed to deliver
ColdFusion webroot
truly rapid application development using its ColdFusion server
• Create a new folder named SampleProject
product. It is the first IDE dedicated specifically to ColdFusion
• Make sure it is selected and click Choose
since Macromedia turned out its last release of ColdFusion
Studio back in 2001. ColdFusion Builder is based on Eclipse, • Click Finish
and not the previous tool. Therefore it works easily with
Adobe® Flash® Builder™ and other Eclipse plugins.


ColdFusion Builder is an Eclipse plugin, and like Flash Builder

can be installed in one of two methods: standalone and plugin.
Which one you chose will depend on whether you are already

using Eclipse and whether it makes sense for you to include

ColdFusion Builder in your workflow.
Standalone creates a packaged version of ColdFusion Builder,
which includes Eclipse. It will be labeled “ColdFusion Builder”
and have icons and splash screens that reflect this. However,
most of these differences are cosmetic only. It’s still Eclipse,
and this version of it is fully capable, so you can use other
Eclipse plugins in this install.

The plugin version requires you to have Eclipse already setup
on your machine. It installs itself as a plugin into that copy.
Getting Started with Adobe ColdFusion Builder

So all of your screens will still say Eclipse, and ColdFusion will
just be another perspective. This can be any version of Eclipse
you have pulled down from, or a packaged Eclipse To start experimenting with ColdFusion Builder we will need a
install like Flash Builder. ColdFusion file, called a “template”.


The basic collection of code in ColdFusion Builder is a project.

Many developers setup one ColdFusion Builder project per
ColdFusion application. However, they are not required to a
one to one match. Some people make the root of their project
the root of their Web server, and have all of the applications
under one giant project. This Refcard will show how to do a 1
app to 1 project match.

Opening up a new installed version of Coldfusion Builder

should show you something similar to figure 1.

To create a new project:

• Create a folder in your ColdFusion’s webroot named
• Go to the File Menu -> New -> ColdFusion Project

DZone, Inc. |

Getting Started with Adobe ColdFusion Builder

To create a new ColdFusion template: ▪ Server Home:

• Go to the File Menu -> New -> ColdFusion Page � ▫ On OSX : /Applications/ColdFusion9
• If Location is blank, click the Browse button � ▫ On Windows: C:\ColdFusion9
• Select Sample Project ▪ Document Root:
� ▫ On OSX : /Applications/ColdFusion9/wwroot
• Click Ok
� ▫ On Windows: C:\ColdFusion9\wwwroot
• Set Name to index.cfm
• Click the Finish Button
We could also use a ColdFusion Component to show some
ColdFusion Builder now knows about your server. We just need
things off.
to tell “SampleProject” to use that server.
To create a new ColdFusion Component: Configure Project to use Server:
• Go to the File Menu -> New -> ColdFusion Component • In the left hand Navigator window Right Click
• If Location is blank, click the Browse button SampleProject
• Select Sample Project • Choose Properties
• Click Ok • Select ColdFusion Server Settings
• Set the Component Name to utility • Select Localhost from the list
• Check the box labeled Generate Script Style Code
To see if this is working we need to preview index.cfm
• Click Finish
• Add the function listed below to utility.cfc between the Preview Web page:
two curly brackets: • If not open, open index.cfm
• Type <strong>hello world</strong> in the editor window
Public string function getToday(){
return dateformat(now()); • Choose File -> Save to save the file
• Locate the Source tab at the bottom of the editor
You now have files to test. You can experiment with these if • Next to Source you should see tabs labeled “Safari,”
you like. To get the full use out of ColdFusion Builder we need “IE”,”Firefox” depending on what you have installed.
to configure it to communicate directly with our ColdFusion • Choose the browser of your choice
server. • “Hello World” should appear in bold.


ColdFusion Builder wants to know about the servers that ColdFusion Builder’s tooling is divided into several forms
you develop on. By having that information it can allow you called views.
to manage the servers through the IDE, get extra logging
information and browse datasources and file systems on Navigator
the server. It also allows ColdFusion Builder to provide The Navigator is a basic view that comes with Eclipse. It allows
“code insight” which means that the IDE knows about the you to see and organize your projects and files.
components, methods and variables that you are currently
One of the overlooked featured of this view is the concept
working with.
of “Working Sets.” They allow you to group various projects
It’s recommended that you do your development against a together and then selectively show or hide groups. This is very
locally installed version of ColdFusion on the same workstation effective when you have tens of projects split amongst many
as ColdFusion Builder. We’re going to assume you have a clients. This can allow you to only see your current projects
default install of ColdFusion running the ColdFusion Web without having to go through the trouble of archiving and
Server. If you are using your own Web server like Apache or IIS removing projects that you aren’t working on but could pick up
your settings may vary. at any moment.

To configure a local server: To access Working Sets:

• Find the Servers tab in the bottom of the IDE window • In the Navigator Panel
• In the top of that click the New Server icon (a server tower • Click the down arrow at the top right
with a plus sign over it) • A menu should open with “Select Working Set”
• Set the following values:
▪ Name: localhost File
▪ Host Name: localhost The File view allows you to navigate the file system of your
▪ Select Is Local from the radio box workstation independent of any projects you may have setup.
▪ WebServer Port: 8500 This is useful if you need to quickly open a file from a project
▪ Skip down to Other Setting before you started using ColdFusion Builder and Projects.
▪ Put in your RDS username and password One of the other things the file view can do is connect to FTP/
• Click the Next button to move on and set the next SFTP servers. This means that you can review remote files, and
set of values: edit code on them.

DZone, Inc. |

Getting Started with Adobe ColdFusion Builder

Servers the Outline view, filter for functions, and then sort alphabetically.
We used the Server view previously to add a server. However it
RDS Views
can do more. Through this interface you can do the following:
RDS stands for Remote Development Services in the
• See current status ColdFusion world. It allows developers to access key pieces of
• Start/Stop/Restart Server information about a remote server. It has be be setup as part
• Launch the Administrator of your ColdFusion server install. Be aware that it is perfectly
• Launch the Server Monitor reasonable to have installed on your local install of ColdFusion,
but it is discouraged on public facing or shared hosting
machines due to the large amount of information it makes

RDS Dataview
RDS Data view allows you to see and interact with datasources
that you’ve setup on your ColdFusion server. It allows you
to see tables, views, columns, and column definitions. Using
Console context menus from this view you can activate the RDS Query
When you start your ColdFusion server via the Servers view, the Viewer.
Console output for the server is printed here. This can be very
useful for seeing errors occur in real time. Also content that
is written to the main application log for your server will show
up here. So you can use CFLog to make content appear in the
Tail View
Tail View allows you to see the contents of a file updated in
real time. This is very useful for targeting the error log of your
ColdFusion server. However it’s important to note that you are
not limited to ColdFusion logs. Any text file on your system
can be seen this way, like your Web server logs, or mail logs.
Service Browser
The Service Browser shows you all CFCs that are installed
under a ColdFusion server’s webroot. It allows you to inspect
all of the methods, see arguments, and filter for access.

It also allows you to paste code calling these CFCs and

methods into your code window.

To paste code from Service Browser:

• Open index.cfm
• Click the Service Browser tab
• Right Click the icon for localhost RDS Query Viewer
• Click Refresh Active RDS Server This view is an interactive query window that allows you to test
• Find and Expand SampleProject in the list SQL SELECT statements against your datasources. Note that
• Expand SampleProject.utility it only allows SELECT, you can not use it to alter data in the
• Right Click getToday() datasource.
• Choose Insert CFInvoke
RDS Fileview
• Look at index.cfm in editor window; a cfinvoke tag should This allows you to browse the file system on your ColdFusion
now be in the code. server. This is obviously much more useful for remote server
Extensions then for your local system.
This view allows you to install, review information about, Snippets
refresh, and delete ColdFusion Builder Extensions. These will Snippets allow you to create brief bits of reusable code,
be discussed separately. organize them, and pull them into your code. You can even
create shortcuts that you can use to pull snippets into your
source code using shortcut keys.
Outline presents organized version of your highlighting major
structures in your code. You can use the outline to click through To Create a Snippet:
to those structures in your code. It is configurable, sortable and • Go to the Snippet View
filterable, so you can choose what shows up in the outline. • Click the Plus icon
A great use of this is when you inherit a project where • Set the following values:
the functions in CFCs aren’t alphabetized. You can easily go to ▪ Name: Quick Date

DZone, Inc.
Inc. ||
Getting Started with Adobe ColdFusion Builder

▪ Trigger Text: qd
▪ Start Block:�
▪ Click Ok
You should now have a snippet named “Quick Date” in your
Snippet View.

In addition to code hinting for CFScript and CFML, ColdFusion

Builder can do this for HTML, JS, and CSS.

Code Insight
While code assist is about knowing what the language is
capable of, Code Insight is about knowing what the code you
are writing is doing. This will allow you to make references
to scopes, variables, and components that you have written,
and get drop down lists of variables, and methods in those
To use a Snippet:
To see Code Insight in action:
• Open index.cfm • Open and delete any code in index.cfm.
• Double Click “Quick Date” in the Snippets View • Type <cfset test = New
• Date code should appear • Hit Space and wait.
However we can do that even faster. Delete that quick date in • A drop down list of components should appear
index.cfm. • Type Sam; the drop down list should now only have
To use Trigger text:
• Hit Enter
• In index.cfm type “qd” • You should have <cfset test = New SampleProject.utility()
• Now hit CTRL + J • Close it up with >
• Date code should appear • Type <cfset date = te and wait
• A drop down list with just test should appear
• test should appear
The ColdFusion IDE main purpose is to write ColdFusion code. • Type . and wait
There are a number of features that make the possible. • getToday() should appear
Code Assist � • Close it up with >
Code Assist refers to ColdFusion Builder knowledge about • Type <cfdump var =”#date#”/>
the CFML and CFScript languages. When you are typing • Preview the page with the browser tab
out ColdFusion language constructs, it can prompt you with
attributes speeding up your coding. Those dropdown lists for both component and methods were
the Code Insight feature in action.
To see Code Assist in action:
• Open and delete any code in index.cfm.
Refactoring encompasses a lot of things. In ColdFusion
• Type <cfmail
Builder this feature was installed with only one of those things,
• Hit Space and wait
method renaming. This allows you to rename a method, and
• A drop down list of attributes should appear have references to that method also be renamed, without
• Type su; the drop down list should only have subject having to manually find and replace those references.
in the list
• Hit Enter To Rename methods:
• You’ll have subject=”” with your cursor between the • Open index.cfm.
quotation marks. • If you have just done the Code Insight Example,

DZone, Inc. |

Getting Started with Adobe ColdFusion Builder

continue, if not delete the contents of index.cfm, replace • Click Adobe CFC and click Open
and save with this code: • The Extension wizard will open
• Click Next
<cfset test = New SampleProject.utility()>
<cfset date = test.getToday()> • In Select Server choose localhost
<cfdump var =”#date#”/> • Click Finish
• When you are notified of success, click Ok
• Now open utility.cfc and highlight function name
getToday() Using Extensions
• Right Click and choose Refactor > Rename ColdFusion Builder extensions can be used in a variety of ways.
• For New Name type getCurrentDay They can generate code. They can analyze code. There’s even
• Then Click Preview one that will translate content in your editor window from one
• You should see a list of all of the changes that written language to another, using the Google Translation API.
will be made In short they can do anything ColdFusion can do.
• Click Ok
The Adobe CFC Generator is a basic code generator.

To use Adobe CFC Generator:

• Open the RDS Dataview panel
• Expand localhost
• Expand cfartgallery
• Expand Tables
• Right Click APP.ARTISTS
• Choose Adobe CFC Generator -> Create CFC
• Browse to SampleProject
• Click Ok
• You should see 4 new files:
▪ ARTISTSService.cfc

These files have all of the code to wire up a remote Web

service to manipulate the Artists table from a ColdFusion
AJAX or Flex front end for your applications.

USING EXTENSIONS Finding Extensions

The largest concentration of extensions currently resides
ColdFusion Extensions allow you to extend ColdFusion at By February 2010 there were close to 30
Builders features and functionality with ColdFusion. Using Extensions for ColdFusion Builder, which was in beta. It’s
some XML to wire ColdFusion Builder views to backend expected that many of the major frameworks will release
ColdFusion code, you can make the IDE do anything extensions to go along with their tools.
ColdFusion can do.
Installing Extensions
Extensions are packaged as zip files. You manage the install of
them through the Extensions view. Enable Line Numbers
By default, ColdFusion Builder (and Eclipse) does not have line
To Install an Extension: numbering enabled.
• Click the tab on the Extensions View to see all currently
To enable line numbering:
installed extensions
• You may have some already installed. If you currently have • On OS X go to the Adobe ColdFusion
one named “Adobe CFC Generator” installed Menu -> Preferences
• If you do, highlight it and click the red X icon in the • On Windows go to the Window Menu -> Preferences
Extensions toolbar to delete • Drill into General -> Editors -> Text Editors
• Choose Completely uninstall • Check the “Show line numbers” check box
• Click the Plus Icon to add an extension Change Profile
• Navigate to where you installed ColdFusion Builder ColdFusion Builder has a default set of color coding and
/Applications/Adobe ColdFusion Builder on OSX shortcut keys. If you’ve migrated to ColdFusion Builder
C:\Program Files\ Adobe\Adobe ColdFusion Builder on from Dreamweaver or CFEclispe you may not like the current
Windows configuration. If so, you can easily change this by alerting your
• Drill into the subfolder extensions profile.

DZone, Inc. |

Getting Started with Adobe ColdFusion Builder

To alter your profile: • On Windows go to the Window Menu -> Preferences

• On OS X go to the Adobe ColdFusion • Drill into ColdFusion -> Editor Profiles -> Editor -> Colors
Menu -> Preferences • Tweak colors on Keywords and what not.
• On Windows go to the Window Menu -> Preferences
However, these settings are not enough for many programmers
• Drill into ColdFusion -> Editor Profiles so you are better off editing the colorization file directly.
• Select another “Active Profile”
To edit Colorization file:
You can also create your own profiles if you wish.
• On Colors Preferences page
Change Syntax Highlighting • Click “Export…”
Any IDE worth its salt is capable of color code. The main
• This will export a .col file.
feature here is tweaking the color settings.
• Edit this col file
To change Code Coloring settings: • Click “Import…”
• On OS X go to the Adobe ColdFusion • Select the edited .col file.
Menu -> Preferences ��


Terry Ryan is currently an Adobe Platform This Getting Started volume starts with Web and Internet
Evangelist for ColdFusion. His job is to drum up fundamentals and database concepts and design, and
support and excitement among developers for Adobe then progresses to topics including creating data-driven
ColdFusion.  He has been working with it for over 10 pages, building complete applications, implementing
years. He’s presented at various Adobe ColdFusion security mechanisms, integrating with e-mail, building
events including cf.Objective, webDU, and Adobe reusable functions and components, generating data-
Max.  Prior to joining Adobe, Terry worked for the driven reports and graphs, building Ajax-powered user
Wharton School of Business at the University of Pennsylvania in interfaces, and much more.
various roles around ColdFusion from Application Developer to
System Administrator.
Terrence Ryan | Adobe Platform Evangelist |


Browse our collection of over 85 Free Cheat Sheets

Get More Refcardz! Visit


About Cloud Computing
Usage Scenarios Getting Started with


Underlying Concepts

Upcoming Refcardz
youTechnologies ®

t toTier
brough Comply.
Platform Management and more...

ge. Colla By Daniel Rubio

dz. com

also minimizes the need to make design changes to support


tegra ternvasll

us Ind Anti-PPaat
Automated growthHTM
ref car

Web applications have always been deployed on servers & scalable

L vs XHT technologies


ation one time events, cloud ML
connected to what is now deemed the ‘cloud’. Having the capability to support

Java GUI Development


ul M.
computing platforms alsoulfacilitate
4 Open the gradual growth curves

n an
Page Source


Vis it

However, the demands and technology used on such servers Structure

faced by web applications. Tools

By Key ■

has changed substantially in recent years, especially with Structur
E: al Elem ents
INC LUD gration
P the entrance of service providers like Amazon, Google and Large scale growth scenarios involvingents
and mor equipment
rdz !

ous Inte Change

CO NTE Microsoft. es e... away by
(e.g. load balancers and clusters) are all but abstracted
Continu at Every e chang

About ns to isolat
relying on a cloud computing platform’s technology.
Software i-patter

Adobe Catalyst
rdz .co

Re fca

e Work
and Ant These companies
Desc have a Privat
are in long deployed trol repos
itory web applicationsge HTM

to mana
Patterns Control

that adaptDeve
lop softw
and scale to
large user
a versio bases,ng and making them In addition, several cloud computing ICSplatforms support data
les to ize mergi
Version e... Patte it all fi minim le
tier technologiesHTM
Manage s and mor e Work knowledgeable in amany
ine to
mainl aspects related tos multip
cloud computing. that Lexceed the precedent set by Relational
space Comm and XHT

ref ca


tice Privat lop on that utilize HTML MLReduce,


Deve a system Database Systems (RDBMS): is usedMap are web service APIs,
Build of work prog as thescalethe foundati By An
Ge t Mo

This Refcard will introduce e within

to you to cloud riente computing, with an
d units
etc. Some platforms ram support large grapRDBMS deployments.

The src
INTEG softwar emphasis on these providers, so es by
task-o it
youComm can better understand and Java s written in hical on of
all attribute dy Ha
also rece JavaScri user interfac web develop and the rris
Vis it


Flash Builder 4
ding code Level
as the desc
the ima alt attribute ribes whe

a Task
ive data pt. Server-s
NTINU of buil tr what it is a cloud computing es as platform can offer your ut web output e in clien ment.
T CO cess ion con it chang e witho likew ide lang t-sid e ge is describe re the ima
ise use mec hanism. fromAND
the pro ject’s vers applications. and subm sourc
ABOU (CI) is
with uniqu are from web
The eme pages and uages like Nested
unavaila s alte ge file
rd z!

a pro the build softw um was HTM ble. rnate can be

gration ed to Label ies to
build minim UNDERLYING once CONCEPTS L and rging use HTM PHP tags text that found,
ous Inte
activit the bare standard a very loos XHTML Tags
committ to a pr USAGE SCENARIOS ate all
ion cies to t
ely-defi as thei Ajax
technolo L can is disp
Continu ry change ization, cannot be (and freq
Autom nden ymen layed
tion r visu
Re fca

a solu inef tool depe same

deplo t need but ned al eng gies if
eve (i.e., ) alled the nmen for stan as software languag overlap uen
(i.e., t, use target enviro it has ine. HTM
with blem Amazon EC2: Industry
whether standard
dards and virtualization
e with b></ , so <a>< tly are) nest
patterns-patterns ar pro ymen
ory. d deploEAR) in each has bec become very little L a> is

Maven 3
reposit ed via particul tions that e Pay only what you consume
tagge or Amazon’s cloud you cho platform
the curr isome
heavily basedmoron fine. b></ ed insid
anti e imp a></
For each (e.g. WAR
ent stan ose to writ
lain the t
es more e
not lega each othe
and x” solu b> is
be exp text) to “fi duc Web application deployment ge until
nden a few years
t librari agonmen was similar app ortant,
ns are to pro packa t enviro industry standard
that will softwaredardand virtualization
e HTM technology.
Mo re

CI can ticular con used i-patter they tend but can

all depe all targe
s will L or XHT arent. Reg the HTM l, but r. Tags
etimes s. Ant tices,
to most phone services: alizeplans with le that
late fialloted resources, ts with an and XHT simplify all help ML, und ardless
XHTM <a><
in a par hes som , Centr temp you prov b></
enting your
ces end nmen
pro prac incurred cost whether a single
such resources on
were consumed
enviro orthenot. ML of L
in the rily bad
based t Virtualization
muchallows aare physical pieceothe ofr hardware ideto be erstand HTML
approac ed with the cial, but, ies are nt targe es to
of the actually web cod a solid ing has
necessa pared to into differe
opert chang
efi itting utilized by multiple operating simplerThis allows
function systems. ing.resourcesfoundati job adm been arou
associat to be ben e builds
Ge t

are not n com Cloud computing as it’semot known etoday

e comm
has changed this.
befor commo alitytohas than Fortuna on irably, nd for
etc. they
Build (e.g. bandwidth, memory,
n elem CPU) be allocated exclusively totely exp som
lts whe that job
appear effects. rm a
Privat , contin nt team Every mov
entsinstances. ed to CSS
to be, HTM ected.
has exp e time. Whi
ed resu ion The various resourcesPerfo consumed by webperio applications
dically (e.g.
opme pag
individual operating system because
L Brow Early
adverse unintend Integrat
sitory Build r to devel common e (HTML . ser HTM anded le it has
web dev manufacture L had very
e ous bandwidth, memory, CPU) areInteg tallied
ration on a per-unit CI serve basis or XHT far done
Continu Refcar
rm an from
extensio .) All are limited mor e than

pro ML shar its

ack rs add
(starting from zero) by Perfo all major cloud
feedb computing platforms. As a user of Amazon’s essecloud
EC2 elopers
nti computing es platform, you are result anyb
on layo
he pat tion he term le this s toma
hey occur d based n H c ed

DZone, Inc.
ISBN-13: 978-1-934238-70-7
140 Preston Executive Dr. ISBN-10: 1-934238-70-8
Suite 100
Cary, NC 27513

DZone communities deliver over 6 million pages each month to 888.678.0399

more than 3.3 million software developers, architects and decision
Refcardz Feedback Welcome

makers. DZone offers something for everyone, including news,
tutorials, cheat sheets, blogs, feature articles, source code and more. 9 781934 238707
Sponsorship Opportunities
“DZone is a developer’s dream,” says PC Magazine.
Copyright © 2010 DZone, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, Version 1.0
photocopying, or otherwise, without prior written permission of the publisher.