ColdFusion MX and the Oracle Thin Driver

Initially it looked like a cakewalk to get ColdFusion MX to work with the Oracle thin JDBC driver. Macromedia even has a technote that tells you how to do it. All went smoothly until I tried to update a value in the database. That caused it to hang.

Thus started a search through the web for similar tales. Many places suggest doing a stack trace using kill -3 (or kill -QUIT, which is the same thing). This did not produce the expected stack trace . Maybe JRun disables that feature.

Next step was to try the sledgehammer. kill -BUS on the process hogging nearly 100% of CPU. This resulted in log file being written (hs_err_pid11111.log) with lots of information but no stack trace. All I could see was the class where it was hanging: coldfusion.sql.Executive.getRowSet. Damn!

A bit of thought led me to wonder if there might be a newer version of the Oracle driver. I was using the 8.1.7 driver, good old classes12.zip. According to Oracle, this is intended for version 1.2. In other words it's ancient. ColdFusion MX 6.1 runs on 1.4.2, in other words something pretty current. A bit of investigation on Oracle's Java Center turned up Oracle9i Release 2 JDBC drivers. A quick look at the release notes told me they are intended for 1.4.

After a download, an upload and a copy, I had ojdbc14.jar in the class path and I restarted the server. Hey presto, everything was working again.

ColdFusion MX Standard Edition doesn't support Oracle directly. It is, however, somewhere between $3,500 and $4,000 cheaper than the the Enterprise Edition, which does.

About this Entry

This page contains a single entry by Christian published on October 17, 2003 4:05 PM.

Automating web application tests was the previous entry in this blog.

Outsourcing and the Innovator's Dilemma is the next entry in this blog.

Find recent content on the main index or look in the archive to find all content.