Using the CFC Proxy in a ColdFusion Cluster

The CFC Proxy API was introduced as a supported feature in CFMX 7.01. It allows you to call ColdFusion Components (CFCs) from Java classes such as a standalone servlet running in the same JVM. In order for this to work, the Java class must be loaded by the ColdFusion classloader rather than a higher level classloader in the J2EE container. To load a Java class with the ColdFusion classloader, the class's jar file must be specified in ColdFusion's web.xml under the cf.class.path parameter. To avoid managing multiple copies of a custom jar file between ColdFusion instances clustered on JRun, you can put a single copy of the custom jar file under a central location outside the JRun root directory. Then modify the web.xml for each CF instance to point to that jar file in the cf.class.path entry. Surprisingly, there is no documentation on using CFCProxy on, but instead you can find this reference on Ben Forta's website. The reference describes the API and provides a brief example implementation. A few details are left out such as how to compile the custom Java class, so I'll provide a quick walk through of how I set all this up...


Morf Transit - The Burlington Vermont Welcome Wagon

While in Burlington Vermont this weekend, I setup to do an HDR image on Church Street, the pedestrian thoroughfare with cross traffic at every block. An HDR image at night requires several long exposures taken in sequence.

While in the middle of the sequence, this driver from Morf Transit taxi service pulls up to wait for a client and stops right in front of me, although there was plenty of space in front of and behind it.

Morf Transit's Beligerent Driver

For 5 minutes I wait patiently with my wife beside me, just chuckling to ourselves over his parking tactics. No bigggie..

After 10 minutes I'm wondering if I should just move closer to the church in the distance and start over. The driver begins honking his horn to notify his clients that he's ready.

At close to 15 minutes of waiting the driver continues honking, and rolls down his windows to get some air. I took this opportunity to request if he wouldn't mind pulling forward a bit, and the conversation goes roughly like this:


Forums and Support for ColdFusion 8 Public Beta

ColdFusion 8 on Adobe LabsThe ColdFusion 8 flood gates have opened wide in the blogosphere, and ColdFusion developers everywhere have begun to consider and experiment with the wide range of great new features. As you know, Adobe Labs is hosting the ColdFusion 8 Public Beta, so if you haven't downloaded and installed it yet, now's the time.

Surely you'll have some questions about features and functionality as you play with the Server Monitor, Flex / LiveCycle DataServices Integration, Ajax integration, PDF documents and forms, Image processing, database driver enhancements, performance improvements, and all the other new features. Be certain to read the Installation Instructions and the Release Notes for known issues. Adobe Labs has set up a ColdFusion 8 Forum where you can begin discussion of your development ideas and experiences.

Questions are welcome, and remember that, for now, this is a public beta, so your input is wanted to help shape the final release. If you feel confident that you've uncovered a bug or have an urgent enhancement request then you can enter a report here. All reports are read and evaluated on technical merit and distribution of impact (i.e. how many developers or sites may experience the reported problem).

I'm thrilled that I've been able to contribute to the development and quality assurance testing for this upcoming final release of ColdFusion 8, and I'm completely certain you will be too.

But work is not done yet, so get ColdFusion 8 Public Beta and provide your feedback.


Is there anyone behind the curtain at TurboLinux ?

Recently I tried to purchase the Japanese version of TurboLinux Server 10 but in the process ran into nothing but dead ends. TurboLinux is reported to be the most popular distribution in Asia and is based in Japan. Although their primary website is in Japanese at, they do have an English version available through a US website

The US website offers only English versions of TurboLinux, and their online store is simply a redirect to their US distributor BlueSquad. Additionally, Distrowatch indicates that the distributor Source One Network is leading vendor.

Finding that neither BlueSquad nor Source One offered the Japanese version of the product either online or by direct contact with their Sales, I decided to just call the mothership itself. That was a futile effort since the phone number listed for their US office in San Francisco is completely wrong. Three times I called to verify the number while pissing off who ever was picking up each time.

Great, so their phone number is misprinted. What next? Well, I sent a fax to their fax number requesting a call back, and I submitted their online feedback form. Twenty four hours later and no response from either.

What really irks me is that the US TurboLinux office is at 600 Townsend St and the Adobe (former Macromedia) office is 601 Townsend St. directly across the street!! But here I am in the Adobe office in Newton, MA and unless I could coerce a colleague in San Fran to take a short stroll I was out of luck.

Almost... My last resort was to co-opt my Japanese collegue down the hall to navigate the Japanese TurboLinux Website. With his help, we were able to successfully make a purchase after much wheel-spinning and wasted time.

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=" 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.


CFMX 7.02 on WebSphere: Unable to register Flex Assembler Service

The switch titled "Enable Flex Data Management Support" in the ColdFusion MX Administrator under Flex Integration menu is automatically enabled in CFMX 7.02. When installing on IBM WebSphere Application Server on Windows, this switch may produce an error when starting such as:

view plain print about
1Unable to initialize FlexAssembler service: coldfusion.server.ServiceException:
2Unable to register Flex Assembler Service in RMI registry: java.rmi.ServerException:
3RemoteException occurred in server thread; nested exception is:     
4java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is: no protocol:
6Files/WebSphere/installedApps/server1/ColdFusionMX7.ear/ColdFusionMX7.war/ WEB-INF/cfusion/lib/ant-launcher.jar.

Notice the last line after the that begins with "Files/WebSphere/installedApps/...". Since WebSphere installs by default into "C:Program FilesWebSphere" on Windows, the space in Program Files triggers the error when attempting to enable Flex Data Management support.

A workaround for this is to redeploy the ColdFusion MX 7.02 EAR such that you select a "Directory to Install Application" that has no spaces, and that you remove the spaces in the Application Name "Macromedia ColdFusion MX" to form just "MacromediaColdFusionMX", or choose any other alphanumeric name of your choice.


Tales told by Simon Brooks

Simon Brooks, a former coworker of mine at Allaire and Macromedia, has become an innovative storyteller and launched the business DiamondScree. Simon's a very nice guy with a great imagination. Check out his website:

Simon began spinning yarns and telling tales in 1991 when he would perform for school groups and families at Youth Hostels in the United Kingdom before moving to the States. In 2003 Simon became a Children's Librarian and freelance storyteller. He has performed for libraries, schools, and private functions and festivals telling to young children and adults. Combining his passion for children's literature and folklore, Simon creates a fun program for all ages. His repertoire comes mainly from European folk and faery tales, but Simon also includes stories from South America, Africa, China and Japan amongst other countries and cultures. All these stories are given life and animation by unique voices, as they are acted out in front of a captivated audience.

Simon Brooks performs tales with energy and wit. Telling folktales, myths and legends from all over the world, he brings characters like Ananzi the Spider, the trickster Raven, Wayland Smith, Merlin and Dionysus vividly to life. From the world of stories Simon captivates his audience with unique voices to animate characters and with expressive body language, he truly brings the stories to life.

Simon made his first CD over the winter of 2005/6 which was released to great applause in June 2006. "Second-hand Tales" To find a copy of his CD, please visit Here you will be able to hear his storytelling at his finest.

Visit DiamondScree today!

ColdFusion 10th Birthday Event on Google Video

Take a walk down memory lane with the founders of ColdFusion and Allaire Corporation on the occassion of ColdFusion's 10th Anniversary, July 2005 in Newton MA.

JJ Allaire, Charles Teague, and Sim Simeonov

Watch on Google Video


Previous Entries / More Entries