Our New Home and the Home Buying Experience

For several years now my wife and I have been researching towns of Eastern Massachusetts to find the best neighborhood to begin a family. In 2006 the real estate bubble in the Northeast finally began to deflate, and for the first time in a decade it became a real estate buyer's market. Coupling the favorable market conditions with regular seasonal lows, we felt the time was right and this winter our search intensified.

We considered factors such as the best schools, lowest crime, amount of open space, commuting distance, housing prices, and overall quality of life. Each year Boston Magazine publishes comprehensive spreadsheets which rank nearly 200 Massachusetts towns by more than 30 factors, including population, average house prices, percent change in prices, student spending, SAT scores, MCAS scores (Science/Math, English), crime rates, contamination, open space, disease rates, average age, and much more. Although this data is published in tabular format as a magazine insert, on some years Boston Magazine made the data available via Excel or CSV document download. We've kept some of these downloaded comparisons and found them to be very handy.


Never Miss Another ColdFusion Hotfix

View the latest ColdFusion Hotfix notifications from your ColdFusion Administrator using a custom extension. Download this zip file, and extract the extensionscustom.cfm to the /CFIDE/Administrator/ directory.

The next time you view the Administrator you'll see a new menu item in the left-hand navigation panel called "Custom Extensions". When the new Custom Extension menu is expanded, you'll see a list of the most recent hotfixes available for your ColdFusion server.

The full hotfix article title is truncated to display well in the menu, but when you mouse over you'll see the full title. Click on a link to view the full hotfix article in the main ColdFusion Administrator window.

Got BlogCFC? The code makes great blog pod, too. Just slap it into a new, empty blog pod between the module tags and add line in layout.cfm.


FDS 2.01 Upgrade - CRM Example App Requires Code Change

With the FDS 2.01 upgrade the Flex Data Services CRM Example Application will not work. Ths Adobe Devnet article demonstrates FDS data retrieval with ColdFusion. The main application file, companyapp.mxml, will no longer compile.

view plain print about
11 Error found.
3Error /cfcrm/companyapp.mxml:256
4Implicit coercion of a value with static type Object to a possibly unrelated type String.<br/><br/>255:     <mx:Binding source="zip.text" destination="company.zip"/>
5256:     <mx:Binding source="companyIndustryCombo.selectedItem" destination="company.industry"/>

This CRM example has a panel with datagrid on the left which lists companies, and the same view has a detail panel on the right where company information can be entered or updated, as well as an employees tab where employees per company can be added, updated, or removed.

When the application loads the company detail panel on the right has a combobox for Company Industry, which itself has a binding to the industry property in the Company class for the currently viewed company.

Flex CRM App

The error shown above is in the mx:Binding tag on line 256. It regards the conversion of an Object, companyIndustryCombo.selectedItem, to a String, company.industry. Flex 2.0 must have silently performed this downcasting automatically since the error above did not occur in Flex 2.0, but does occur with 2.01.


My first talk - ColdFusion MX 7 Server Administration

Introduction slide for lecture 14 of Developing Web-based Database Applications In December 2006 I was honored to provide my first public presentation ever as guest speaker for Harvard University's course Developing Web-based Database Applications (CSCI E-253). This course is part of the Extension School curriculum for the Master of Liberal Arts in Information Technology and the Certificate in Applied Science concentration in Information Systems and Electronic Commerce, and it focuses on the use of Oracle and ColdFusion MX as the vehicle of learning database design for the Web.

The instructor requested that I provide 2 hours of material for the full lecture on the topic of administering a ColdFusion server. This resulted in a very comprehensive crash course presentation on ColdFusion MX 7 Server Administration from page request flow, to understanding directory structure and critical config files, to managing the web server connector stub, to walking through the ColdFusion Administrator, and including ColdFusion and JVM tuning. As a conservative estimate, I spent nearly 30 hours of my own time to build the presentation.

The course was part of Harvard's Distance Education program, which provides live, streaming video from the classroom to remote students around the country and around the world, in addition to the local students in the classroom. My presentation was conducted in state of the art video production classroom equipped with a control booth, several remote controlled cameras, and two slide screens. The control booth technician made me feel like I was on a Hollywood stage, providing hand signals to me as he counted down to begin live broadcast.

Surprisingly, I did a decent job without any major hitches. You can imagine how stressing this scenario was for a first-time presenter. Based on this experience, I intend to review my presentation to expand or contract some topics as necessary. Then if there's a need, I may offer the presentation to other groups when time permits. Since having joined the ranks of ColdFusion QA this year I've been much busier than I was in Technical Support, and even more now that my wife and I immersed in house hunting and negotiating, but things should slow down by the Spring and allow me to get back to this.

For now, here's a few screen shots from the preso, and I may generate blog entries for each of these topics in the near future, but hopefully there's some value in just having these cartoon diagrams. You may also want to check out last year's post on How ColdFusion Receives and Processes Requests.


Using the Flex Data Service Contact Manager Application with ColdFusion ... Really

The Contact Manager Application and Tutorial for Flex Data Services integration with ColdFusion has a few problems that will cause it to not work. Having worked out the issues, I've created a parallel instruction set for getting this tutorial to work.

Using ColdFusion with Flex: Part 1: Creating and running a contact manager application


Verity doesn't work when you run ColdFusion 7 (unsupported) on Java 5 or Java 6

Verity doesn't work when you run ColdFusion 7 (unsupported) on Java 5 or Java 6. The problem is not in ColdFusion or Verity - it is in the venerable old Cryptix Java security provider which doesn't work with Java 5 or Java 6. Fortunately Cryptix is open source so you can get Cryptix and change it as necessary to make it work with Java 6 (or Java 5).


Running ColdFusion MX 7 on Fedora Core 6 Linux

There's been a lot of talk about how to run ColdFusion MX 7 on Ubuntu Linux, but I haven't seen much about running CFMX on Fedora Core 6 Linux. While both are officially unsupported for use with ColdFusion by Adobe, as a hobbyist you might enjoy working with these or other distributions, as I do. Ubuntu is based on source from Debian Linux, while Fedora Core is based on Red Hat source, and in fact Fedora distros are effectively public betas used towards the development of future Red Hat Enterprise Linux releases. According to DistroWatch, Ubuntu is by far the most popular distro out there, for now, while Fedora pulls in at #3.

The problems regarding the installation and configuration of ColdFusion on each distribution are both overlapping and yet distinct, especially where Security Enhanced Linux (SELinux) is involved (Fedora). FC6 intends to make SELinux security policy administration easier via a graphical troubleshooting tool. (While I was able to install and use setroubleshoot, I was not able to get the sealert client GUI to work, but it does have commandline operations that were helpful... somewhat. See below.)

Here I identify and address 5 problems in order to run ColdFusion on FC6, leaving one problem with SELinux unresolved but with a workaround. Some of these problems and their solutions have been blogged about before, but I found new twists to them in FC6.

I decided to address the issues of Fedora Core because Red Hat Enterprise Linux 5 is currently in Beta 2 and is largely based on Fedora, and I hope to be ahead of the curve by the time RHEL5 is released. Since ColdFusion 4.01 in 1998, ColdFusion releases have supported current Red Hat releases.


Top Companies Using ColdFusion MX

At various conferences I've heard from customers that are trying to make the case for using or continuing to use ColdFusion when pitching ideas to their decision makers or executives. One the most frequent requests has been for Adobe (or Macromedia at the time) to publish a customer list which customers can take to the table.

Such an article was recently published, detailing a partial list of the worlds top companies using ColdFusion MX application server. Of note is a list of ColdFusion quick facts at the end that might be useful as an elevator pitch should you ever find yourself squeezed in with your VP for a few floors.

I would add that countless ColdFusion applications run on private intranets of companies like these which are therefore unavailable to search engines that tally application server popularity based on frequency of file extension.

World's Top Companies Use ColdFusion MX
In use at 75 of the Fortune 100 companies and at more than 10,000 other companies worldwide, ColdFusion MX is one of the most widely adopted web technologies in the industry. Here's a partial list of customers (with links to case studies) who rely on ColdFusion for its signature server-scripting environment.

For years Ben Forta has maintained a similar list, Who's Using ColdFusion?.

This blog entry was picked up on Ray Camden's blog and drew a long series of comments worth checking out.

ColdFusion Protocol Tags CFHTTP, CFINVOKE, CFLDAP support SSLv2

My reply to a comment to an earlier blog entry about importing SSL certificates into ColdFusion cacerts file for CFHTTP purposes warrants its own blog entry here as a separate topic.

The comment:

[cfhttp url="https://httpmailbox1.beta.etrac.net/submit-to-etra... method="post" port="xxx" proxyserver="xxxx" proxyport="xxx" >

I am having the same problem but I am using BlueDragon and CFMX. I am trying to connect to vendor using CFHTTP to send a XML file. The vendor keeps telling me that I am faliing the SSL handshake on his side. I was told by him that I needed to purchase a certificate form a trusted third party which we did (Verisign). This certificate was installed by my server team but I am refused connection at the vendor.

Do I need to export the vendors certificate and install it on my WebLogic server using the Keytool.

It sounds as if the vendor is requiring SSLv3 with client authentication, rather than SSLv2 with only server authentication. The documentation here describes the conditions where you may have to import a certificate into ColdFusion for SSLv2 for server authentication, but this is often confused with the requirement for client auth:

To use HTTPS with the cfhttp tag, you might need to manually import the certificate for each web server into the keystore for the JRE that ColdFusion uses. This procedure should not be necessary if the certificate is signed (issued) by an authority that the JSSE (Java Secure Sockets Extension) recognizes (for example, Verisign); that is, if the signing authority is in the cacerts already. However, you might need to use the procedure if you are issuing SSL (secure sockets layer) certificates yourself.

Lets back up a moment to consider the practical difference between SSLv2 and v3. First, imagine a simple HTTPS connection between a browser and server. A user at a browser types in the URL of a website beginning with https:// and the brower makes the request. Lets assume that the server is using SSLv2. The request gets to the server and the server replies with a message header stating it supports SSLv2 and sends its certificate. The browser receives the SSL certificate, inspects it, and negotiates a session key to be used for the remainder of the request/repsonse communication. This negotiation period is known as the SSL handshake.


Configuring ColdFusion Multiple Instances with Apache Virtual Hosts... Again

Over the past few months I recall that I've been asked on several occassions how to configure multiple Apache Virtual Hosts for multiple JRun server instances or multiple JRun clusters (with or without ColdFusion).

This topic is actually explained very well on page 4 of an article written by Brandon Purcell a few years ago, and is still relevant to current versions.

Installing and Configuring ColdFusion MX 6.1 Multiple Instances with IIS and Apache Virtual Hosts

Previous Entries / More Entries