ColdFusion MX 7 Announced and Released!

 
Jan 07, 2005

by Judith Dinowitz

Late at night February 6th, the ColdFusion community was pleasantly surprised to find ColdFusion MX 7 (formerly codenamed Blackstone) on Macromedia's site. It was not the actual release (the announcement and release came after midnight on February 7th) but it caused a flurry of excitement on mailing lists and blogs throughout the ColdFusion community.

Fusion Authority had an interview with Dave Gruber, Senior Product Manager for ColdFusion. Gruber was as excited about this release as we are (we have been using it live on House of Fusion for several months now) and he pointed out that this version of ColdFusion is based squarely on the ColdFusion MX 6.1 code base. "People who didn't see the big benefits of going to ColdFusion MX 6.1 are going to see the benefits of going to ColdFusion MX 7," said Gruber. "The core architecture of ColdFusion MX 6.1 is tried, true and tested. In addition, ColdFusion MX 7 brings a new set of features and optimization." He also noted that a number of sites have been running the beta code live for some time. "Several of our customers had asked us early if they could go live with many of the new features. They built apps that worked beautifully, and they wanted to put them into production right away. Except in rare cases, our beta agreement prohibited that, so we actually rewrote some legal documents to make sure they could do so." Those sites (such as Fusion Authority and House of Fusion) that had permission from Macromedia to run ColdFusion MX 7 in the beta will most probably come out with this news publicly now that the product has been released.

For several weeks, you may have seen that three hosting companies have been running ColdFusion MX 7 live and letting programmers test it out on their servers. Macromedia gave permission to these hosts to provide this "safehouse environment" to the community.

These practices have made this version of ColdFusion one of the most open and tested betas around. It has also excited the community with new features and talk that made the community feel a true partner with Macromedia in the process of developing the software. Months before the software was released, articles and blogs were coming out from Macromedia talking about the new features of the product.

More than anything else, this release is about the features. Some of them were created based on business needs; others were created based on programmer needs. A third set were created based on end-user needs. According to Gruber, ColdFusion MX 7 is designed to solve three chronic problems that afflict web development today, giving programmers more power and time to develop their applications:

  • Printable Web Content -- The traditional solutions to printing content from a website have been to either dynamically reformat the content for printing or to have two versions of a page, one for the browser and one for the printer. Both of these solutions are time-consuming and often cause developers grief.
  • Structured data output (Reporting) -- People try to create pixel perfect layouts using HTML nested tables -- a tedious solution and one that doesn't produce great results in the end.
  • Rich, high quality forms: HTML markup traditionally has poor options to create attractive and useful forms in the browser. With ColdFusion MX 7, you can create great looking Flash forms and Xforms in minutes by using just a few ColdFusion tags.

These are problems that have existed on the Internet for years, and ColdFusion MX 7 is Macromedia's attempt to make these issues a thing of the past.

The Push for Mobility

Gruber said that with ColdFusion MX 7, Macromedia is also trying to make the mobile Internet more accessible to the average developer. The Internet is no longer just about the desktop or the browser. It's connected to billions of devices throughout the world. Yet we still think of web applications as things that operate in the context of the browser and on the desktop. We've extended that to a services-based model with web services, which is still based on the HTTP model and tied to basic browser applications. The mobile phones that most people carry are also connected Internet devices, yet we seldom use any of the Internet capabilities that are there. Macromedia wants to change that.

There are a couple of reasons for the consumer's lack of interest in the mobile Internet:
  1. There are very few applications that exist today that are useful. People have made lots of attempts, through web browsers on phones; others have struggled with rolling out applications for the mobile desktop. Still, the applications are few and far between.
  2. SMS text messaging is one type of application that has made it on mobile phones. It provides a very simple interactive mechanism that has a secure protocol. It's already built in and distributed on all of the devices, and provides us an opportunity to get the interactivity of the Internet onto these devices. Even for SMS, however, few applications have already been deployed because they're complex and expensive to do. To create those apps today requires a tremendous amount of expertise and investment (in things like expensive JMS server technologies). Right now, the code that's been written is very low level.

Gruber says that the market is slowly expanding. We are now beginning to see some of those applications being written in the United States, where mobile devices are still not as deeply adopted as they are in Europe or Asia.

This market is not limited to cell phones; lots of other Internet connected devices are being made, and Macromedia wants to exploit the opportunity to connect to those as well.

Other New Features

Printing in ColdFusion MX 7

In ColdFusion MX 7, programmers are able to wrap any HTML web content in the CFDOCUMENT tag and convert that HTML directly into either a FlashPaper or PDF document. This is very powerful and easy to use, and when Macromedia previewed this feature in forums all around the world, they received much positive feedback and standing ovations in many places.

This might seem like a simple thing, but Gruber said that it was a problem that every single web user experiences, and to finally solve the problem was very compelling. FlashPaper provides a wonderful display option, and Macromedia thinks that this is really going to turn FlashPaper on in the industry. It's one thing to have a desktop tool to convert documents to FlashPaper and then post them as content on your site; it's another thing to be able to dynamically create these rich FlashPaper documents on the fly from servers. "People are going to buy ColdFusion as a FlashPaper or PDF generator," he said.

Forms in ColdFusion MX 7

Forms in CFMX 7 still use the CFFORM tag, but there are many new capabilities built into the product. CFFORM allows developers to use a handful of tags to produce great-looking Flash forms, taking advantage of Flash widgets and controls, client-side processing. "It's very easy and powerful," Gruber said.

Even before you get into the Flash, however, the JavaScript has been tightened up and put into an include file and a generated file, so there is much less JavaScript. There are also many more options for validation.

"The client-side validation options are probably what people will take advantage of fastest, and will add the most value to their site," said Gruber.

The XSL output format that Macromedia leveraged in forms provides a new level of skin-ability for websites. "As we built this feature set out, we really wanted to leverage the power of XSL and allow people to create broad, custom skins for their site." With the release, Macromedia is shipping a series of very useful, nice looking XSL files that people can use as form types. They expect corporations and users to create their own custom skins as well, to reformat all the forms on their sites. "The feature benefits here have two sides," said Gruber. "The developer saves large amounts of time on a very broad scale, not just on the creation but on the maintenance of the site as well." In Macromedia's discussions with customers, he said, programmers have said that the maintenance of the forms are one of the most difficult aspects of web-based forms.

The other side is the benefit to the end user. "Because it's so easy [to create these forms], the end user is going to see many more Flash forms that are a lot more complex. They'll see multi-step forms that are laid out in a much better fashion, and the whole end-user experience will be improved."

Structured Data Output (Reports)

Gruber was particularly enthusiastic about the ColdFusion's new capabilities for generating reports. He said that this release of ColdFusion includes a full featured report generation engine similar in scope to Crystal Reports and Actuate. This will enable developers to lay out pixel-perfect, structured data, supporting the needs of sales orders, purchase reports, bank account statement summaries, sales reports, financial reports, and all the complex data structures that developers create every day in their applications. Until now, they've struggled to lay this information out in HTML in forms that don't really meet their clients' needs. They'll now be able to do produce these reports natively within ColdFusion. With this feature comes the ColdFusion Report Builder, which is a developer's client tool used to lay out the report design, and to add charts, graphs and subreports. All of the ColdFusion functions are available to the reports themselves, so they have skills that are reusable right inside the report definition. All of the generation occurs natively within the server.

When asked which product Macromedia emulated for the look and feel of their report builder, Gruber said that they tried not to copy from any specific product or tool. They did look at other report building tools for ideas as to what users would expect, but their goal was to take advantage of years of evolution and to provide something that's familiar to people, easy to use, and easy to learn. "We think we've developed a really useful tool for folks that allows them to develop the new .CFR (ColdFusion Report) template," said Gruber.

Gruber said that of all the features in the release, the biggest positive response has been to what Macromedia has done with reporting. "It's a very empowering capability, allowing people not only to do things they've always wanted to do but to do things they haven't had the ability to do." Some developers have not used reporting tools before for financial reasons. Even those that have used other reporting tools say that they like the tightly integrated approach of ColdFusion, to be able to do this right in the context of the ColdFusion application rather than having to ship data in and out of another application (such as Crystal Reports). "It's a lot of complexity that just goes away."

He said that it also changes the way you think about reports. "This isn't really about reports," he said."It's about structured data. When you traditionally think about business reports, you think of them as a separate entity ... You create reports and people consume them. Reporting allows you to have much finer control over your layout, which allows you to do things like create sales order receipts on the fly. Before you would have had to use some klugy HTML to get the same result."

With reporting, you get the same advantage of FlashPaper or PDF output, which gives you portability, consumption of printing, emailing or saving as well.

Event Gateways and the Mobile Internet

Gruber said that the event gateway provides a whole new world for what to do with ColdFusion. It takes ColdFusion from the Web application server category and puts it into a brand new category that you could call 'Internet Application Servers.' "No longer is this technology limited to the web," said Gruber. "It is now a broad-scale Internet technology serving both HTTP, browser, and web services, like it always has, but now opened up to a whole new world of message-based event devices. It provides truly two-way interactive mechanisms for instant messaging, global phone technologies ..." He said while people may start out thinking simply of creating a browser on a phone, they'll find simpler and more valuable ways to use it. "Through some basic short message menus, it's very useful to do things like online banking and airport reservations." He gave an example of an online banking application that he has that lets you get your balance and transfer money through letter input such as "g" for get balance, "t" and a $ amount for transfers, etc. You can set notification levels as well for certain actions, such as your balance going below a set amount. With such applications, he said, customers would now feel very in touch with their financial world. This real time notification is tremendously useful.

This can extend out to other applications, such as stock alerts and trading, and no longer through the bulk of the phone browser, but through a much lighter text-based system that's proven and secure.

Gruber also mentioned the usefulness of SMS technology for instant messaging, extending perhaps to applications for online support through mobile phones. One possibility would be to have a digital "buddy" that's Macromedia support. It would be a routing system that would narrow down what you need and put you in touch (through instant messaging) with the appropriate person in the company who was online at the time. "All of a sudden, through the power of instant messaging and push technology, instant messaging really opens up some cool opportunities," said Gruber. Michael Dinowitz mentioned the possibility of having an instant message go out when the answer to a particular forums question was posted.

CFMX 7 ships with a full smsc test server and emulator, making it even easier to test and develop SMS applications.

There are other less visible gateways available in this release, such as file watchers and directory watchers, that are also very useful. "Event gateways open up ColdFusion to different markets and very different technology uses," said Gruber. Although Macromedia is shipping a number of gateways, users can write their own gateways to interact with specialized devices. For example, this technology could be used on a manufacturing floor to interact with wireless devices.

There were upwards of 3,000 people on the beta for CFMX 7, and the feedback has been very positive on all of these features. Other small features that people have wanted for a long time include things like the Session Ending Events, such as OnStart and OnEnd.

Michael Dinowitz pointed out that before the Session Ending Events in ColdFusion MX 7, developers used to have to write statements like "IF isDefined Application.init". The concept of sessions ending doesn't exist in ColdFusion yet, but has existed in languages like ASP. People are going to have to start developing and absorbing this philosophy and concept.

Deployment Administration

Gruber said that when developing CFMX 7, Macromedia looked at where they could add real value in the deployment of ColdFusion, and where they could save people time and money. They realized that people have achieved high availability of their sites today by investing in more hardware and clustering them together, which has cost them both in hardware and administration costs. Though this has solved the problem well, much of the ColdFusion user base has chosen not to invest in that level of additional capabilities on their site. "There are a lot of applications that are running on their own, and are single points of failure," said Gruber. "They're internal apps, and they sit behind the firewall. When they go down, there's no public outcry, so people have lived with this. They're not happy with it but they've lived with it because they don't want to spend the extra money to run their own environment."

In ColdFusion MX 6, the Java platform gave ColdFusion the ability to create multiple instances and cluster them together, creating high availability on a single server. Yet not many people have done it, said Gruber, because it's too hard to do. Before ColdFusion MX 7, Macromedia had not made it easy enough for the ColdFusion user base. Setting up multiple instances in Java required the use of the Java administrator and a series of complex processes that is not easy for Java programmers. With CFMX 7, Macromedia has simplified this, making it a "point and shoot" 3 step process to create an instance, clone an application, and cluster the applications together. ColdFusion developers can now do all of this internally in ColdFusion, through the Enterprise manager, with a very simple, web-based graphical user interface. This will provide all of Macromedia's customer base with the ability to add a significant level of site and application availability with no extra cost.

Other new deployment features include the ability to deploy ColdFusion applications as a single EAR or WAR file in a J2EE environment, a requirement that has been much requested from Macromedia's Java audience. Many customers have standardized on J2EE and ColdFusion together, and because ColdFusion is a pure Java solution, the J2EE world expects ColdFusion to perform and be deployed like other J2EE applications. In ColdFusion MX 6, it was a two-step process. You had to first deploy ColdFusion and then deploy your application. Macromedia has now combined ColdFusion runtime and the application in a single EAR or WAR file, allowing you to deploy your ColdFusion application just like any other Java application, without deploying ColdFusion at all.

This also allows for sourceless deployment, and Gruber said that Macromedia has had some great feedback from corporations who are very security conscious and didn't want their source code exposed anywhere.

In fact, said Gruber, the administrator is now compiled, not encrypted, which is great not only for security, but also for the ISPs. Michael Dinowitz added that you can compile any ColdFusion content while still having a .CFM extension. This removes the precompilation step when you run it, and hides the code. If you decompile it, it will decompile to Java, not to ColdFusion.

The Future: New Spaces and New Abilities will Push ColdFusion Forward

Why upgrade to ColdFusion MX7? Gruber said that the goal here is that each single major new feature in this release would cause people to upgrade, even if it were the only new feature in the release. "Each of them are worth upgrading for, but when put together,the user receives tremendous value."

  • The mobile Internet opportunity will open up new spaces and new markets for ColdFusion. "That's exciting for me," Gruber said, "because ColdFusion has been used in the same markets for a long time now, and it's great to see new markets open up."
  • He feels that reporting will do the same thing. "Even though reporting is a very mature industry, having it built into the app server is new. ColdFusion is now going to be competing against reporting products, and we hope we'll do well in that market also. We hope that people will start using us with or instead of some of these other classic, long term Enterprise tools that are in the marketplace today."
  • Gruber also said that ColdFusion MX 7's new printing capabilities will make developers look really good, and corporations will upgrade for that feature specifically. The end user will be impressed as well. As a side effect, the use of FlashPaper in ColdFusion will enhance FlashPaper's use and reputation. "I think that all those people that are used to doing PDF are going to buy ColdFusion because of the PDF generation. They're going to try FlashPaper and see why FlashPaper is a better option, and it's going to really drive the adoption of FlashPaper in a big way."
  • The simplicity and versatility of the CFFORM options in this release save developers both time and money, Gruber said. "While people don't generally feel they have a forms 'problem,' when they see the difference in development time, they're amazed."
  • On the deployment side, Macromedia is excited to be offering the ability to just "point and shoot" and add services to their sites, and the new simplicity of using multiple instances is another major reason to upgrade.

Michael Dinowitz pointed out that there's a philosophy going on behind the scenes, which is seen both in the report generation and in the Dreamweaver code generation, that is pointing people towards using CFCs with ColdFusion rather than ColdFusion alone. The report generator has the "ColdFusion only" button and the "CFML and CFC" button. This allows you to use the CFCs to do the queries.

Pricing and Packaging

ColdFusion is available today in two editions. The Standard edition costs $1299, while the Enterprise edition costs $5999. Upgrade pricing varies based on what you own and what edition you're upgrading to, but the pricing can be found on Macromedia's ColdFusion MX 7 Upgrade Page. The ColdFusion community will be happy to know that Macromedia is running Macromedia.com on CFMX 7, proving again their dedication to the product. They are also providing a new breeze presentation (a Product overview), a document detailing reasons to upgrade, 12 individual feature Captivate demos, and all new website content written by Ben Forta and Macromedia's Engineering and Quality Assurance staff. Macromedia will also be providing free extensions and wizards for Dreamweaver.

I urge all of our readers to upgrade to the new edition, because we've been running on it for several months and it's well worth the upgrade!

ColdFusion MX Overview

Breeze Presentation: Features Tour of CFMX 7

ColdFusion Upgrade Guide

System Requirements (includes a list of supported application servers)

All of this information, and more, is available at:

ColdFusion Information Page

Add a Comment
(If you subscribe, any new posts to this thread will be sent to your email address.)
  
Privacy | FAQ | Site Map | About | Guidelines | Contact | Advertising | What is ColdFusion?
House of Fusion | ColdFusion Jobs | Blog of Fusion | AHP Hosting