Adobe
Products
Acrobat
Creative Cloud
Creative Suite
Digital Marketing Suite
Digital Publishing Suite
Elements
Photoshop
Touch Apps
Student and Teacher Editions
More products
Solutions
Digital marketing
Digital media
Education
Financial services
Government
Web Experience Management
More solutions
Learning Help Downloads Company
Buy
Home use for personal and home office
Education for students, educators, and staff
Business for small and medium businesses
Licensing programs for businesses, schools, and government
Special offers
Search
 
Info Sign in
Welcome,
My cart
My orders My Adobe
My Adobe
My orders
My information
My preferences
My products and services
Sign out
Why sign in? Sign in to manage your account and access trial downloads, product extensions, community areas, and more.
Adobe
Products Sections Buy   Search  
Solutions Company
Help Learning
Sign in Sign out My orders My Adobe
Preorder Estimated Availability Date. Your credit card will not be charged until the product is shipped. Estimated availability date is subject to change. Preorder Estimated Availability Date. Your credit card will not be charged until the product is ready to download. Estimated availability date is subject to change.
Qty:
Purchase requires verification of academic eligibility
Subtotal
Review and Checkout
Adobe Developer Connection / ColdFusion Developer Center /

What's new in ColdFusion 10

by Rakshith Naresh

Rakshith Naresh
  • @rakshithn

Content

  • Features pillars of ColdFusion 10
  • Embrace futuristic technologies
  • Deploy enterprise-ready applications
  • Build applications quickly
  • Where to go from here

Created

15 May 2012

Page tools

Share on Facebook
Share on Twitter
Share on LinkedIn
Bookmark
Print
CFC ColdFusion components data management deployment file management web services

Requirements

Prerequisite knowledge

Although an existing knowledge of ColdFusion would help, this article does not require you to have ColdFusion skills. A general understanding of the web technologies is helpful for getting the most out of this article.

User level

All

Required products

  • ColdFusion (Download trial)

Adobe ColdFusion 10, the next major, feature rich version of ColdFusion focuses on ease of use, productivity, and security.

This article introduces what is available in ColdFusion 10. Because it is not possible to cover every feature in depth in a single article, I recommend referring other feature-specific articles on Adobe Developer Connection or reading the ColdFusion 10 documentation for more information about individual features.

Features pillars of ColdFusion 10

The entire feature set in ColdFusion 10 can be categorized under three pillars. Each pillar is a focus area for ColdFusion 10. This article describes each pillar along with a discussion of the features within each pillar.

Here are the three feature pillars of ColdFusion 10.

  1. Embrace futuristic technologies
  2. Deploy enterprise-ready applications
  3. Build applications quickly

Embrace futuristic technologies

Using ColdFusion 10, you can embrace new technologies that ColdFusion 10 features, without having any deep understanding of the modern technologies.

HTML5 is no longer a "buzzword" in the web world. It is emerging as a standard that is used on most modern day websites. ColdFusion 10 lets you adopt HTML5 through its feature set with minimal or zero knowledge of HTML5.

HTML5 WebSockets

ColdFusion 10 lets you push data from the server to the client through the built-in support for the WebSocket protocol on the server. With this feature, it is now possible to build true real-time web applications that work with dynamic data. ColdFusion 10 also gives you a messaging infrastructure built on top of the raw WebSockets that let you easily publish or subscribe to one or more channels.

Here's a quick look at the few lines of code required:

First, simply define channel(s) in your application.cfc file, as follows:

component { this.name="wsdemoapp"; this.wschannels=[{name="wsdemo"}]; }

Next, use the new ColdFusion CFWEBSOCKET tag to create the WebSocket and establish a WebSocket connection with ColdFusion.

<cfwebsocket name="mycfwebsocketobject" onmessage="mymessagehandler" subscribeto="wsdemo" >

Then, specify within the Onmessage attribute the JavaScript message handler that ColdFusion should invoke when a message is published on this channel. The subscribeto attribute is a comma-separated list of channels that the websocket subscribes to.

Finally, use the WSPublish function to publish a message on a channel from the server, as follows:

WSPublish("wsdemo","Welcome to wsdemo channel");

HTML5 charting

ColdFusion 10 now supports interactive client-side charts based on Canvas, SVG, or Flash. The functionatilty is supported through the existing ColdFusion CFCHART tag. There is support for a wide array of different client-side charts. What's more, you can also customize the style of the charts using JSON objects.

Here's a code snippet that shows results in an HTML5 chart by fetching values from a query:

<cfchart format="html" type="bar" height="700" width="500" query="sales" itemcolumn="year" title="Revenue" xaxistitle="Years" yaxistitle="Revenue (in millions)"> <cfchartseries query="sales" valueColumn="sales_us" serieslabel="US"> <cfchartseries query="sales" valueColumn="sales_emea" serieslabel="EMEA"> <cfchartseries type="bar" query="sales" valueColumn="sales_apac" serieslabel="APAC"> <cfchartseries type="line" query="sales" valueColumn="profit" label="profit"> </cfchart>

HTML5 video player

ColdFusion 10 provides a built-in HTML5 video player through the CFMEDIAPLAYER tag.
The exisiting Flash video player that was available with the CFMEDIAPLAYER tag has also been revamped to provide better functionality. The look and feel of the HTML5 and the Flash video player is exactly the same. The JavaScript APIs for both the players is the same. There is also fall-back support between the Flash and HTML5 versions, so that the end user experience continues to be the same across all devices/browsers.

<cfmediaplayer name="player_html" source="./videos/test.mp4" type="html" width=800 height=500 align="center" title="HTML Playback" >

Support for RESTful Web Services

RESTful Web Services are becoming increasingly popular mostly because of their simplicity and ease of use. You can access RESTful Web Services easily over HTTP/HTTPS. ColdFusion 10 provides support to easily expose your ColdFusion Component (CFC) as a RESTful Web Service through a few attributes you specify within your CFC.

First, specify the rest attribute as true within the CFC, along with the restpath attribute, which specifies the path of the service accessed over HTTP. On every function in the CFC it is possible to associate the HTTP method that should invoke the corresponding function.

Revamped Enterprise Web Services

ColdFusion 10 now supports Web Services through a revamped AXIS 2 engine. As a result of this, you can use WSDL 2.0, document literal wrapped style and SOAP1.2 protocol to access and publish your Web Service. Specific care has been taken to ensure the new functionality is completely backward compatible.

Deploy enterprise-ready applications

This pillar focuses on features that can make your web applications enterprise-class application.

Security enhancements

Security is a key focus area for ColdFusion 10. By upgrading and using the features of ColdFusion 10, you can boost the security of your applications. ColdFusion 10 has built-in functions that you can use to prevent against XSS (Cross-site Scripting) and CSRF (Cross Site Request Forgery) attacks. You can now make session cookies HTTPOnly, secure, and apply only to a particular domain. The team has improved session management and added functionality to invalidate and rotate a session. It is also possible to select the option to install ColdFusion with a secure profile that secures the server with default security settings.

Tomcat integration

ColdFusion 10 now comes integrated with Tomcat and replaces JRun, which was bundled with previous releases of ColdFusion. Since there is active development happening on Tomcat, ColdFusion users can now stay up to date with the Java Platform Enterprise Edition (JEE) technology improvements. There is no difference in the installation procedures and the team has ensured a smooth process for migrating from JRun to Tomcat.

Enhanced caching

You can specify cache settings at an application level in ColdFusion 10. It is now possible to create dynamic cache regions. Cache regions are essentially buckets that can hold cached data. The built-in functions for caching have been modified to now take in a cache region as well. Also, it is now possible to run the cache server as a separate process outside of the ColdFusion JVM.

Hot fix installer and notification

ColdFusion administrator will now list all the updates that are available from Adobe. You will no longer have to follow manual set of instructions to install hot fixes from Adobe. ColdFusion administrator will display available hot fixes. You can download the update and install the hot fix using the hot fix installer. It is also possible to uninstall the hot fix to revert to a state prior to the hot fix installation. You can specify various settings in the administrator on how you would like to be notified when there an update is available.

Improved and revamped scheduler

We have replaced the scheduler engine powering the schedule task functionality with a much more powerful engine in ColdFusion 10. As a result of this, there are a range of new functionalities available in ColdFusion 10. You can group related tasks together. It is possible to create tasks that are applicable to a specific application. You can attach listeners to tasks, which get invoked when the corresponding event gets triggered for the task. It is possible to chain tasks one after the other. You can use CRON syntax to schedule tasks. Task management becomes easier as you can now specify priorities for the tasks, as well as handle errors when working with scheduled tasks.

Microsoft Exchange Server improvements

ColdFusion 10 now supports integration with Microsoft Exchange Server 2010. ColdFusion integrates with Exchange Server using the new Exchange Web Services (EWS). There are also additional functionalities provided around folder operations, user availability, and conversation operations.

Search improvements with Apache Solr

Apache Solr replaces Verity in ColdFusion 10. We have made database indexing easier and more efficient, especially with support for the Data Import Handler in ColdFusion 10. We also added support to pass dynamic custom fields, which allow you flexibility in your search queries.

Microsoft Office file interoperability improvements

ColdFusion 10 now supports office 2010 file formats to its exisiting functionality associated with Microsoft Office documents.

Database enhancements

ColdFusion 10 now supports the new JDBC datatypes such as NCHAR, NVARCHAR, LONGNVARCHAR, NCLOB, SQLXML and more. Database connections are often shared among clients, and sometimes some clients tend to use more resources than others, which can lead to starvation-like situations. In ColdFusion 10, database connections store client information on each connection and as soon as connection returns to pool, it is reset. There is now support in the cfquery , cfupdate , cfinsert, and cfstoredproc tag to provide a struct that contains database-specific client information. You can handle database-specific exceptions due to the introduction of the new attribute database in the cfcatch tag.

Server Monitor and Server Manager enhancements

The Server Monitor has a new section for caching. The cache regions of server list all the cache regions of the server. For each cache region, you can see the hit count, miss count, and number of objects in the cache region. When you select a specific cache region, you can now see some more information about the cache region such as Cache hit ratio, Cache size, Avg get time, and so forth. The server monitor can now also track REST requests that occur over HTTP.

Cache settings are new to server manager. You can now define these settings right within the server manager.

The new server settings of ColdFusion 10 have been added to the server manager. Similarly mail settings around keystore and event handling around scheduled tasks has now been added to the server manager.

Build applications quickly

The last feature pillar of ColdFusion 10 focuses on features that help you boost developer productivity.

Enhanced Java integration

We have enhanced Java integration with ColdFusion to provide a much tighter integration of ColdFusion with Java.

You can now specify Java-specific settings in the application CFC. It is now possible for you to specify custom paths from which JAR files or Java class files can be picked up from. It is also possible to enable dynamic loading of these JAR and class files where the new files will be picked up without having to restart the server.

You can also now create Java dynamic proxies for ColdFusion components (CFCs) that will let CFCs be treated as Java objects when they are passed to the Java classes.

We have revamped CFCProxy , a utility class to invoke CFCs from Java classes, to provide a much better performance when invoking CFCs from Java.

Object Relational Mapping (ORM) enhancements

The primary feature in this space is the abilty to full text search the ORM entities. The full text search functionlity is powered by the underlying Lucene Search engine. It is possible to configure an offline indexing of ORM entities or an automated one, where the entity is indexed as soon as it is modified or inserted.

Along with the full text search, there are enhancements around support for nested super class, stored procedure support, and HQL logging when using the ORM.

Virtual file system enhancements

Additional support has been added to the virtual file system support in ColdFusion 10. You can now access ZIP, JAR, FTP and S3 file systems as virtual file systems in ColdFusion. In addition to this, you can use an application-specific InMemory file system. It is also possible to restrict the size of the InMemory file system.

Language enhancements

Here's the list of the major enhancements to the language in ColdFusion 10.

  • Use the For-In construct to easily iterate over Query and Lists in the CFScript tag.
  • Specify the content you want to write into a file within the body of the CFFILE tag without having to specify the content through an attribute.
  • Use the CallStack functions, which trace how functions are invoked, to reach the line of code that has the CallStack function.
  • Fetch the appliction settings of an application programatically using the ApplicationMetaDataGet() function.
  • Use the new implicit constructor for a CFC to set values to the properties within the CFC, as follows: emp=new employee(firstName="Tom", lastName="Nash");.
  • CFML now supports closures that let you define and pass functions on the fly.
  • There is now a way to invoke a CFC function in CFScript using the invoke function.
  • The enhanced CFScript tag supports now provide the ability to use more tags in the CFScript tag.

Flex and AIR Lazy Loading

Earlier, when using ORM entities on the server with an Adobe ® Flex or Adobe ® AIR client, you could fetch no related entity of an ORM entity, or fetch all related entities of an ORM entity. Consider a set of department entities that have a set of employee entities that belong to each department. When building a client application for this to display all the departments, and list all the employees of each selected department, you would not want to fetch all the departments and employees in one shot. It would be preferable to list all the departments, letting the end user select a particular department; which would then cause the application to fetch the related employee entities of the department from the server. The Lazy Loading feature in ColdFusion 10 lets you do exactly this when working with ORM and the Flex/AIR client, without the application developer having to worry about supporting Lazy Loading across the client and server.

Where to go from here

This article provides a quick introduction to the vast feature set of ColdFusion 10. You can also watch the video What's new in Coldfusion 10. Refer to other articles on Adobe Developer Connection that focus on specific features of ColdFusion 10 for a deep dive into the new features and how to use them. You can visit the online ColdFusion 10 documentation to get more information. There are various blog posts on the Adobe ColdFusion blog that you can read to get more information.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License

More Like This

  • Object-oriented programming: Using inheritance wisely
  • Easy rich Internet applications with ColdFusion 8
  • What's new in ColdFusion Builder 2
  • Building your first data management application with ColdFusion and Flex
  • Using ColdFusion 8 and Flex 3 to export visual components
  • Building ColdFusion applications using Java
  • What's new in ColdFusion Builder 2.0.1
  • Getting started with RESTful web services in ColdFusion
  • Working with Tomcat as the built-in application server
  • Getting started with ColdFusion Builder 2

Tutorials & Samples

Tutorials

  • Using Axis2 web services with ColdFusion 10
  • Serving HTML5 videos with ColdFusion 10
  • HTML5 WebSockets and ColdFusion -- Part 2

Samples

ColdFusion Blogs

More
07/06/2012 Adobe ColdFusion 10 on CIO.com
06/22/2012 Elishia Dvorak Joins as ColdFusion Solution Consultant and Product Evangelist
06/19/2012 Outstanding contributions to the ColdFusion 10 and ColdFusion Builder 2.0.1 pre-release
06/18/2012 CF html to pdf service - consume from node.js using rest api

ColdFusion Cookbooks

More
04/01/2012 Send multiple mails with the adresses from database
07/27/2011 Passing a list with with STRING values
05/27/2011 AUTOMATED SANITIZED Resultset with ColdFusion
03/16/2011 Using Metadata To Add Static Variables to ColdFusion Components

Products

  • Acrobat
  • Creative Cloud
  • Creative Suite
  • Digital Marketing Suite
  • Digital Publishing Suite
  • Elements
  • Mobile Apps
  • Photoshop
  • Touch Apps
  • Student and Teacher Editions

Solutions

  • Digital marketing
  • Digital media
  • Web Experience Management

Industries

  • Education
  • Financial services
  • Government

Help

  • Product help centers
  • Orders and returns
  • Downloading and installing
  • My Adobe

Learning

  • Adobe Developer Connection
  • Adobe TV
  • Training and certification
  • Forums
  • Design Center

Ways to buy

  • For personal and home office
  • For students, educators, and staff
  • For small and medium businesses
  • For businesses, schools, and government
  • Special offers

Downloads

  • Adobe Reader
  • Adobe Flash Player
  • Adobe AIR
  • Adobe Shockwave Player

Company

  • News room
  • Partner programs
  • Corporate social responsibility
  • Career opportunities
  • Investor Relations
  • Events
  • Legal
  • Security
  • Contact Adobe
Choose your region United States (Change)
Choose your region Close

North America

Europe, Middle East and Africa

Asia Pacific

  • Canada - English
  • Canada - Français
  • Latinoamérica
  • México
  • United States

South America

  • Brasil
  • Africa - English
  • Österreich - Deutsch
  • Belgium - English
  • Belgique - Français
  • België - Nederlands
  • България
  • Hrvatska
  • Česká republika
  • Danmark
  • Eastern Europe - English
  • Eesti
  • Suomi
  • France
  • Deutschland
  • Magyarország
  • Ireland
  • Israel - English
  • ישראל - עברית
  • Italia
  • Latvija
  • Lietuva
  • Luxembourg - Deutsch
  • Luxembourg - English
  • Luxembourg - Français
  • الشرق الأوسط وشمال أفريقيا - اللغة العربية
  • Middle East and North Africa - English
  • Moyen-Orient et Afrique du Nord - Français
  • Nederland
  • Norge
  • Polska
  • Portugal
  • România
  • Россия
  • Srbija
  • Slovensko
  • Slovenija
  • España
  • Sverige
  • Schweiz - Deutsch
  • Suisse - Français
  • Svizzera - Italiano
  • Türkiye
  • Україна
  • United Kingdom
  • Australia
  • 中国
  • 中國香港特別行政區
  • Hong Kong S.A.R. of China
  • India - English
  • 日本
  • 한국
  • New Zealand
  • 台灣

Southeast Asia

  • Includes Indonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam - English

Copyright © 2012 Adobe Systems Incorporated. All rights reserved.

Terms of Use | Privacy Policy and Cookies (Updated)

Ad Choices

Reviewed by TRUSTe: site privacy statement