Andrew Powell

Into The Mind of A Solutions Architect

Andrew Powell

What Am I Using ColdFusion For These Days?

February 4, 2009 · No Comments

About a year ago, it seems like parts of the ColdFusion community really took to my idea of running Spring and Hibernate inside of ColdFusion (see this link for the materials). Some people, like Joe, took the concept to heart and really ran with it. Some very cool things have been done with the concept, like Groovy integration, etc. That's all well and good, but shortly after I gave that presentation at cf.Objective() last year, I got to thinking: "If ColdFusion is just a J2EE app, why am I even using ColdFusion in this setup and not straight-up Java?".

Since that time, I've been focused on creating Flex/AIR apps with BlazeDS, Java, Hibernate, and Spring all in the mix. ColdFusion, though, still has a place in the core application stack. I've not abandoned it, totally. Why? Well, ColdFusion still easily provides services and functionality that are, quite frankly, a pain in the ass to leverage in Java, even with Spring. I have come to realize that while CFML is not the greatest application of pure OO principles and CFCs really just irritate me more than anything else (more on that in another post), it is still pretty handy for other things like:

  • PDF functionality
  • Exchange Server integration
  • Image Manipulation
  • Presentation Generation
  • Report Writing
  • Email Services

Granted, there are some things on that list that Spring makes easier than Java without Spring, but at the end of the day, it's still not as simple as doing it with CFML. That being said, I try to keep all of my data persistence, and other business logic within my Java app, but at the same time, make ColdFusion available to Flex (via AMF) for those "special services". At the end of the day, it's not a matter of building your application in ColdFusion vs. building your application in Java, it's simply finding the balance of what works best from both environments.

I'm not anti-ColdFusion in anyway, nor is ColdFusion "dead", like some have suggested. ColdFusion's role in the modern web application stack has just changed, for me. Adobe makes it possible for you to use ColdFusion as your only platform, but also enables you to use it as a provider of specialized services to your application. I don't like to think that I am only limited to ColdFusion as my application platform. I like to think of ColdFusion as another piece of the total puzzle for my solutions. It's just not the same piece it was for me 18 months ago.

Tags: BlazeDS · ColdFusion · Flex · Hibernate · Java · Spring · Universal Mind

0 responses so far ↓

  • There are no comments yet...Kick things off by filling out the form below.

Leave a Comment