Upgrading from ColdFusion MX to ColdFusion 8
Just as I am frequently asked about the process of migrating from ColdFusion 5 or older to ColdFusion 8, I am also regularly asked about the process of upgrading from ColdFusion MX (the versions variously known as ColdFusion MX, ColdFusion MX 6, ColdFusion MX 6.1, ColdFusion MX 7, ColdFusion MX 7.0.1, ColdFusion MX 7.0.2, ColdFusion 7, ColdFusion 7.0.1, and ColdFusion 7.0.2) to ColdFusion 8 (at the time of this posting, the current release of ColdFusion 8 is ColdFusion 8.0.2). And so here too I have compiled some helpful information:
First and foremost, to set things up: as noted in the following link, ColdFusion MX to ColdFusion 8 is a valid upgrade path (upgrading to ColdFusion 8 is supported for the 2 most recent previous major releases of ColdFusion):
You can use the ColdFusion Code Compatibility Analyzer to determine if your code is valid for ColdFusion 8:
- http://livedocs.adobe.com/coldfusion/8/htmldocs/basiconfig_24.html
- http://livedocs.adobe.com/coldfusion/8/htmldocs/Debug_18.html
I recommend reviewing the tag and function changes to ColdFusion. Be sure to note the addition of functions with names that collide with user-defined functions in your code (for instance, ColdFusion 8 introduced the isImage() function; if your code has a user-defined function called isImage() you will need to change the name of that user-defined function and all references to it in your code before upgrading to ColdFusion 8):
- http://livedocs.adobe.com/coldfusion/8/htmldocs/Tags-pt0_21.html
- http://livedocs.adobe.com/coldfusion/8/htmldocs/functions-pt0_22.html
You may also wish to check the CFML Language History:
It's very important to read the release notes in case some might apply to your environment:
Many of these upgrading best practices will certainly apply:
When you're ready to install ColdFusion 8, you'll want to review the "Installing and Using ColdFusion" documentation:
- http://livedocs.adobe.com/coldfusion/8/htmldocs/Part_1_Installing_1.html (HTML LiveDocs version, containing comments from users and Adobe employees)
- http://livedocs.adobe.com/coldfusion/8/install.pdf (PDF version with no comments)
Adobe has worked hard to make the upgrade process as smooth and easy as possible. The process involved varies depending on:
- Your current product version and edition as well as, in the case of ColdFusion Enterprise, your current deployment type.
- Your desired product version and edition as well as, in the case of ColdFusion Enterprise, your desired deployment type.
To upgrade to ColdFusion 8 Enterprise from ColdFusion 8 Standard:
- Enter your license key for ColdFusion 8 Enterprise in the ColdFusion Administrator in the System Information section accessible via the link marked with an "i" Information icon in the upper-right. No reinstall of ColdFusion 8 is required. This is true because there is a single runtime (per platform; the same is true for the installer) for ColdFusion 8 which acts as a particular edition based on what license key(s) are entered--if you enter a license key for ColdFusion 8 Enterprise, the runtime will act as ColdFusion 8 Enterprise; if you enter a license key for ColdFusion 8 Standard, the runtime will act as ColdFusion 8 Standard. Note that both ColdFusion 8 Trial and ColdFusion 8 Developer are the same as ColdFusion 8 Enterprise, with the notable exception that neither is licensed for production use, Trial becomes Developer after 30 days, and Developer accepts connections only from a limited number of IP addresses.
To upgrade to ColdFusion 8 from standalone installations of any release of ColdFusion MX (NOTE: the process is the same for both standalone installations of ColdFusion Enterprise and ColdFusion Standard):
- Run the ColdFusion 8 installation wizard to install ColdFusion 8
- Browse to the ColdFusion Administrator to launch the Configuration Wizard and allow it to import the settings from ColdFusion MX
To upgrade to ColdFusion 8 Enterprise from multi-server and J2EE installations of any release of ColdFusion MX, follow this TechNote:
As long as you choose to use the built-in web server during installation of ColdFusion 8, your installation of ColdFusion MX will not be altered or removed by the installation of ColdFusion 8. You will therefore be able to continue running ColdFusion MX while you test your new ColdFusion 8 installation.
If during installation of ColdFusion 8 you choose to use the same external web server as you are using for ColdFusion MX, note that the CFIDE and CFDOCS directories in the root of your external web server will be replaced by the CFIDE and CFDOCS directories for ColdFusion 8. If you wish to avoid this, you must instead choose to use the built-in web server during installation of ColdFusion 8. As Adobe Technical Account Manager Michael Collins explains in the following blog post, you can later use the Web Server Configuration Tool to configure your external web server for ColdFusion 8:
If you wish to configure your external web server to work properly with both ColdFusion MX and ColdFusion 8 on an ongoing basis (as opposed to working with only one version or the other), you can do so, but you will need to do some manual configuration of your web server; see the following blog post by Adobe Community Expert Charlie Arehart for more information (even if you're not using Microsoft IIS and Microsoft Windows XP, the principles described will apply):
There is no need for you to uninstall ColdFusion MX once you are no longer using it, but you may do so if you would like. However, if you wish to install any release of ColdFusion MX and you have ColdFusion configured to use an external web server, please view the following TechNote (which is written for the uninstallation of ColdFusion MX after upgrading to ColdFusion MX 7, but is also applicable to the uninstallation of any release of ColdFusion MX after upgrading to ColdFusion 8) before uninstalling ColdFusion MX:


For example, this code works in CF8:
<cfftp CONNECTION="name" action="PUTFILE" server=ftpserver" username="username" password="password" stoponerror="Yes" localfile="myfilename" remotefile="theirfilename" transfermode="AUTO" port="21" timeout="500">
This doesn't:
<cfftp action="PUTFILE" server=ftpserver" username="username" password="password" stoponerror="Yes" localfile="myfilename" remotefile="theirfilename" transfermode="AUTO" port="21" timeout="500">
I did submit this as a bug report to Adobe and received confirmation that this is a new issue in CF8
Although as a result of this bug, the connection attribute is required, note that the connection attribute is essentially ignored for file operations with <cfftp> and thus the value of the connection attribute doesn't matter when it is used here as a workaround to this bug.
- Is the previous version supposed to still be there after an upgrade?
- You would think the old version would be removed during the upgrade - has anyone had two different versions of CFMX run with any problems?
- Assuming running two versions simultaneously would theoretically cause problems, would the fact that we didn't have any until now was due to one being started before the other?