One of the most exciting enhancements in ColdFusion 9 is actually not a ColdFusion 9 feature at all. Rather, it’s the introduction of a dedicated ColdFusion IDE, ColdFusion Builder, available today as part of the ColdFusion 9 public beta. This new Eclipse based development environment has been built from the ground up with ColdFusion development in mind, and this post will help you get started quickly and easily.
ColdFusion Builder is a ColdFusion IDE built in Eclipse, the same platform which powers Flash Builder (and Flex Builder, previously). There are some important reasons for this:

  • ColdFusion Builder and Flash Builder are designed to work together, and can greatly simplify the development of ColdFusion powered Flash and Flex applications.
  • Eclipse is already popular with ColdFusion developers, thanks to community projects like CFEclipse.
  • Eclipse is a proven platform with extensive support for all sorts of development, and all Eclipse plug-ins can be used with ColdFusion Builder. So, if you need something that we did not provide, a third-party plug-in may do the trick.
  • Eclipse is supported on multiple platforms, including all of the platforms supported by ColdFusion itself.

ColdFusion Builder can be installed in two ways (using the same installer):

  • If you are unfamiliar with Eclipse, and are not already running an Eclipse installation (including Flex Builder and Flash Builder), then the ColdFusion Builder installer can install a complete Eclipse configuration for you, all ready to use.
  • If you do have an existing Eclipse installation (including Flex Builder and Flash Builder), then the ColdFusion Builder installer can add ColdFusion support to that existing Eclipse. This is the preferred configuration if you are using Flash Builder.

ColdFusion Builder is an IDE, it is not ColdFusion itself. To use ColdFusion Builder you’ll need access to a ColdFusion server (ideally ColdFusion 9). ColdFusion Builder can work with local or remote ColdFusion servers, but it is highly recommended that you use a local development server (ColdFusion Developer Edition is free, so no real downside, and lots of upside). You’ll also need to know the ColdFusion Administrator and RDS login information for some ColdFusion Builder functionality to work properly.
When you first start up ColdFusion Builder, you may see a splash screen (well, one of several) which you can close. You’ll then be presented with the IDE itself. Depending on what Eclipse plug-ins are installed, you may or may not be in “ColdFusion mode”. Let me explain.
As noted above, Eclipse can be used for all sorts of development, Java, HTML, CSS, MXML, PHP, and much more. As each type of development needs different screens and panels in an IDE, Eclipse supports the defining sets of configurations called “Perspectives”. A perspective is a specific screen setup, with windows and panels and toolbars all configured in a specific way. Switching perspectives is easy, and Eclipse can even auto-switch perspectives for you as you switch between projects and file types.
The Eclipse title bar should show you the perspective in use. In addition, there are buttons on the top right of the screen for switching between perspectives. If the title bar says “ColdFusion”, and if you see tabs at the bottom for Servers, TailView, and more, and if you see RDS tabs in the panel on the right, then you are in the ColdFusion perspective. If not, open the Window menu, and select Open Perspective, Other, and then ColdFusion. Perspective selections are saved automatically in your Eclipse workspace, and so the next time you open ColdFusion Builder, the right perspective should be open and ready to use.
Before you can do anything useful with ColdFusion Builder, you need to tell it about the ColdFusion Server you’ll be connecting to. You do this in the Servers tab at the bottom of the IDE. Here are the steps:

  1. Click on the Add Server button (the one with a server and a yellow + sign).
  2. Select ColdFusion as the server type.
  3. Enter a unique server name, this need not be the actual server name, it’s what shows up in the server list so you know which server you are referring to. If you are using a local server you may want to just set it to “localhost”.
  4. Enter the Host Name, this is the IP address or DNS name of your ColdFusion server, and it’ll be “localhost” for a local development server.
  5. Enter the Web Server Port, this is usually 8500 for development servers using the integrated HTTP server, or 80 for servers connected to external HTTP servers.
  6. Enter the Context Root and Application Server Name only if using ColdFusion deployed on a J2EE server.
  7. Enter the RDS User Name and RDS Password. If you did not specify an RDS username then the default will be “admin”.
  8. Click Next.
  9. Next, specify the Server Home (not the web root, this is the folder into which ColdFusion itself is installed, on Windows machines using a local development server this may be c:ColdFusion9).
  10. Enter the Document Root (this is the web root), on Windows machines using a local development server this may be c:ColdFusion9wwwroot.
  11. Click Finish.

You’ll now have a server listed in the Servers tab. You can click on the server to stop it, start it, access its Administrator, and more. These options are available via a toolbar and via right-click menu options.
Now that you have a server defined, the next step is to create a Project so that you may start development. Here are the steps:

  1. Select File, New, ColdFusion Project (or right-click in the Navigator panel on the left and select New, ColdFusion Project).
  2. Enter a unique Project Name (project names can have spaces in them).
  3. By default, Eclipse stores projects in a workspace folder, and these are typically not under the web root. For ColdFusion development, especially when working with a local development server, this is not optimal. So, uncheck the Use Default Location, and enter the path for your project in the Project Location field. The folder should be under the ColdFusion web root, and you may need to actually create a new folder.
  4. Then click Next.
  5. You’ll then be asked for the server to use with this project. Select the server you just defined in the Servers drop down list box.
  6. Click Next.
  7. Then click Finish.

You now have a ColdFusion project ready to use. You can open and close projects in the Navigator panel (obviously, a project must be open to be able to use it).
Now let’s create a quick application to make sure everything is working. Here are the steps:

  1. Open the new ColdFusion Project, if it is not already open.
  2. Make sure the project is selected (clicked on, otherwise you may create the file in another project).
  3. Create a new ColdFusion page by selecting File, New, CFM Page (or right-click in the Navigator panel on your project and select New, CFM Page).
  4. Enter a page Name, perhaps “index” (the .cfm extension is optional, and will be added automatically).
  5. Click Finish.
  6. The page will now be open for editing, enter some CFML code, perhaps the following:

    Hello, it is #DateFormat(Now())#
  7. Save the page.
  8. Below the editor window you’ll see browser tabs (the exact list of browsers present will vary based on your OS and the browsers installed). Click on any browser to run your code, and you’ll see the generated output.

Assuming you made it this far, congratulations, you are now using ColdFusion Builder.
We’ve packed lots of features into ColdFusion Builder, but here are some you should be aware of:

  • As you type code in the editor, notice that your code is automatically colored. If you are typing a tag and hit space and pause briefly, you’ll be presented with a pop-up of available attributes or values.
  • The editor also features lots of built-in intelligence. For example, if you are typing datasource=”” you’ll be presented with a list of available datasources, and when you type query=”” in a you’ll be presented with a list of queries already defined. You’ll discover lots of other shortcuts like this as you work.
  • On the left edge of the editor, you’ll see a – sign next to each tag. You can click this to collapse and expand blocks of code.
  • Above the editor window you’ll see a CFML toolbar. Mouse over each button to see what they do. The rightmost button serves two purposes, if a tag is selected it’ll display the attributes for that tag, and if not it’ll display a wizard to help you find the tag you want.
  • In the panel below the editor you’ll see a tab named TailView. This useful tab can show you changes in server log files as they occur. By default no log files will be listed, but at a minimum you’ll want to add application.log, server.log, and exception.log (you can add others, too). To add these click on the Add Log button (it has a picture of a document with a plus in a green circle) and select the log files to add. ColdFusion log files are in a folder named “logs” under the ColdFusion root.
  • The panel on the right of the editor contains the RDS Dataview tab. Use this to browse datasources, run data wizards, and more.
  • The same panel contains the Outline tab which shows you the outline of your code and lets you easily jump to specific code blocks by clicking on tags.
  • All panels can be moved, as can panel tabs (which can be moved from panel to panel, for example, I find that the Services Browser tab a better fit for the panel on the right than the panel at the bottom).
  • ColdFusion Builder includes an FTP plug-in that you can use to deploy projects via FTP.
  • Earlier I mentioned ColdFusion Builder extensions. These are distributed as ZIP files that can easily be installed into ColdFusion Builder (visit RIAForge to access a growing list of extensions, including Ray Camden’s invaluable QueryParam Scanner). To install extensions, simply download the ZIP file, then open the Window menu and select Preferences, ColdFusion, Extensions, click Install, and then follow the prompts.

I’ve only touched the ColdFusion Builder surface here, but as you can see, this new tool can already simplify your ColdFusion development, and we’re just getting started. ColdFusion Builder can be used with earlier versions of ColdFusion, but it ideally used with ColdFusion 9.
Both ColdFusion 9 and ColdFusion Builder are now available as part of our public beta.

63 thoughts

  1. Hi Ferris,
    Follow theses steps to change editor background.
    Navigate to Window->preferences->ColdFusion->Editor profiles->Editor->Colors
    Check option to override eclipse settings, Click Button next to background to assign background color of your choice. Click Apply. Now all CFMLcode will have background color you have set.

  2. I changed my code editor background color to black (easier on my eyes) and holy crap, there’s a lot of places where you have to change colors, and then it doesn’t all work…. now I want to switch back to the default colors but I think I’m gonna need to reinstall to do it 🙁

  3. Just going through the comments in this blog and I must say Travis your comments really stand out for me. You may not speak for all ColdFusion developers that much is evident by some of the comments you have received – battles between ColdFusion fundamentals and ideals; Old and new ColdFusion developers.
    These maybe generational arguments that some developers may not see the point(s) you are trying to make, but what you are touching on are the fundamental arguments that many ‘veteran’ ColdFusion developers share – about the ‘direction’ that ColdFusion is going.
    The problem here I think is that CF Community is unable to understand what this ‘direction’ is and Adobe’s inability to provide one or one that makes sense, so what you are left with is a community that is trying to figure this out but appears very messy.
    The impression I get is that Adobe are ‘facilitating’ ColdFusion but not driving it. When you make claims to developers ‘IDE was built from the bottom up’ which it is clearly not then you form all manner of doubt and speculation about Adobe’s direction.
    If Eclipse was never developed and unheard of and Adobe had launched this as the new ColdFusion IDE (since CFStudio (or Homesite)) then we would probably not be having this. It is not the fact that its Eclipse or CFEclipse (which has the respect of many developers), it is the fact that Adobe are trying to market something to a community that is already free, open source and well supported; and to slap some branding on it, add some marketing spin and change a few bits, whether or not it may make market sense it is simply not enough.
    The CF Community is dying to get the recognition it deserves, increase market share and to be competitive against its rivals and when you do things like this it just cheapens the atmosphere. It is nice to have CF9 but for me ColdFusion needs to be scaled down to its core functions for speed and reliability, modularised (plug-in what you need Flex, etc) and then packaged up and marketed.
    As a ‘veteran’ ColdFusion developer of many years, Travis you are speaking my language keep up the good work.

  4. Corioliss are getting a reputation for making flat irons that are ‘must have’ fashion accessories, so good do they look. But getting beautiful, shiny hair using a hair straightener isn’t about how it looks; it’s about how it performs. So how does a Corioliss flat iron ‘shape up’?

  5. I’m having a problem with the orm wizard, when I right click on a table to generate the orm cfc’s, for some reason it thinks that the contents of the cfide directory should be under the root. so it is giving an error that the /adobe cfc.. etc directory does not exist. anyone had such a problem?

  6. Exhausted !! I give up. Two days trying to make this work.
    After 10 years doing ColdFusion I realize I better join forces with php and Perl before it’s too late.

  7. Ben, CF Builder help, Adobe Forums, and you all seem to make the same assumption: that all users of CF and or CF Builder software will understand all the terms. Therefore, everyone can tell us to "# Enter the Context Root and Application Server Name only if using ColdFusion deployed on a J2EE server."
    If we don’t know what or where a Context Root is, we’re hosed. Not even an example or two. This holds true for many of the items in the pseudo-documentation I come across. In my tech writer days, we used to call this "drive by" documentation. "On the left, you will see xyz; on the right, you will see abc."
    Can you point to any real documentation on what to put in the "Context Root" field under Server Settings for CF Builder? Thanks!

  8. I’ve gotten CF10 installed with IIS on win7. I keep trying to add a server but everytime I input a server home as c:ColdFusion10 it tells me that it is invalid. Can someone tell me what I’m doing wrong?

  9. Hi, I’m new to ColdFusion and CF Builder. I installed CF Builder 2 and ColdFusion 10 to learn to use both and I was doing ok. After the trial period, CF Builder 2 reverted back to Express Edition and I can no longer preview .CFM pages in any of the two internal browsers (IE and Mozilla). I can only preview .HTM pages. Is that normal of the Express edition or am I missing something. It would be weird for CF Builder not to preview .CFM pages on its internal browsers….
    Note that before the downgrade to Express Edition I was able to preview my code on either internal or external browser. Could anybody please help.
    Thanks

  10. Hi, I’m new to ColdFusion and CF Builder. I installed CF Builder 2 and ColdFusion 10 to learn to use both and I was doing ok. After the trial period, CF Builder 2 reverted back to Express Edition and I can no longer preview .CFM pages in any of the two internal browsers (IE and Mozilla). I can only preview .HTM pages. Is that normal of the Express edition or am I missing something. It would be weird for CF Builder not to preview .CFM pages on its internal browsers….
    Note that before the downgrade to Express Edition I was able to preview my code on either internal or external browser. Could anybody please help.
    Thanks

Leave a Reply