Today I was able to attend a sneak peak into ColdFusion 8, code-named ‘Scorpio’.  And, let me first say, this release is going to be a major improvement and make out lives as CF Programmers much easier.  As always, CF 8 sticks with the RAD mentality, allowing us to create web applications and RIA very easily and quickly with ease.  After watching the presentation, I am REALLY looking forward to the release of CF 8.

    Here is an overview of what I learned about the upcoming release of ColdFusion:

AJAX

  • <CFAJAXPROXY> – like access=”remote”
  • AJAX wizard – like Flex wizard
  • <CFGRID>
    • YUI library
    • bind data to grid through query object
    • No push capability
  • <CFTREE>
    • Loads in dynamically
  • Bind form elements to each other (one select to another)
  • Auto-suggest for <CFSELECT>
  • Calendar and date pickers

FILES

  • New function for i/o
  • <CFLOOP> supports files (each line, each character, or character blocks)

CFDocument

  • Support for bookmarks and TOC
  • Support for sectional page count

Reporting

  • Templates (design-time or at creation time)
  • Use external stylesheets (via <CFREPORT> tag)
  • Output to HTML

CFC Interfaces

  • <CFINTERFACE>
  • See if method exists in CFC
  • Optional

Argument collections for tag attributes

  • Pass in structure instead of each attribute for the tag
  • Can override attribute by specifying inline

Implicitly create Arrays and structures

  • Instead of having to ArrayNew(1) or StructNew() to create an array or structure object you can use [] for arrays and {} for structures
  • I.E.:
    • newArray = ["firstelement","secondelement","thirdelement","fourthelement"]
    • newStruct = {mykey="my value", mynumber=8}

JS Operators (== instead of eq)

  • ++
  • %
  • +=
  • *=
  • /+
  • %=
  • &&
  • ||
  • !
  • !=
  • < and >
  • <= and =>

Miscellaneous

  • <CFSTOREDPROC> support cachedwithin and cachedafter
  • Query caching working when using cfqueryparam
  • <CFTP> support SFTP
  • <CFENCRYT>
  • CFCs can now serialize properly (for replicating)
  • <CFOBJECT> and CreateObject() support invoking .NET assemblies within the CLR

Exchange integration

  • Not windows specific
  • Supports mail, calendar, contact, and task
  • <CFEXCHANGECONNECTION>
    • <CFEXCHANGECALENDAR>
    • Filter programmatically
    • <CFEXCHANGEFILTER> (like a WHERE clause)
    • <CFEXCHANGEMAIL> (get and delete, not send)
    • <CFEXCHANGECONTACT> (query, new)
    • <CFEXCHANGETASKS> (crud)
  • No planned support for SUN One Messaging

On-Demand Presentations

  • <CFPRESENTATION> creates Acrobat Connect Presentation on the fly
  • Output is SWF
  • Pages within presentation can be HTML, SWF, or dynamic CFML (include <CFCHART>, <CFGRID>, etc)
  • <CFPRESENTATIONSLIDE> defines slide
  • <CFPRESENTER> defines presenters (can be associated with specific slides)
  • Can overlay MP3 audio on top of slides
  • Presentation is dynamically created, never gets stale
  • Create a slide show by placing images within each slide of the presentation

Ships with Flex Data Services gateway

  • CF can connect directly to Flash connected to the FMS (Flash Media Server)
  • Bi-direction connection (push and pull data)
  • CF is notified when other change the data

PDFs

  • <CFPDF> and related tags
  • Obtain PDF metadata
  • Merge PDF files
  • Extract pages from PDF Files (and then merge back together if you want)
  • Encrypt PDF files
  • Create page thumbnail (extending off of <CFIMAGE>)
  • Flatten PDF files (makes text and images not editable) (smaller
  • Protect PDF files
  • Execute DDX instruction sets
  • <CFPDFFORM> tag
    • Populate pdf forms (AcroForms and XML based forms) with CF data
    • Extract data from a form that is filled out
    • <CFPDFFORMPARAM> to pass values to the form
    • <CFPDFSUBFORM> to manipulate nested forms
    • If they save the PDF, the form data is stored in the file
    • Can submit form to CF
    • Use JS inline to perform form validation
    • Can scan form into Acrobat Pro – and place form elements in a layer on top

CF Administrator

  • User based authentication for access to CF Administrator with individual roles
  • User account can also be tied to RDS and user specific sandboxes
  • User role is extended to the Admin API

Server Monitoring

  • In-line monitoring into CF Server (similar to SeeFusion)
  • See activity, running requests, usage details, memory and CPU loads
  • Take server snapshots (save state for future reference)
  • Built with Flex 2
    • Can kill long running request threads
  • Can define alerts, threshold values for:
    • Unresponsive or slow server,
    • JVM memory usage, 
    • Average response time, 
    • Thread count, and more.
    • Can easily send email, kill threads programmatically, take snapshots, and refuse incoming requests
    • Specify a processing alert CFC (onAlertStart, and onAlertEnd) allows us to write our own code when an alert occurs.
    • Can interact with SNMP systems
  • Server Monitoring API
    • Can even build your own interface
  • Includes a multi-server monitoring (through IP and Port) even if it’s not clustered

Per Application Settings

  • Custom tag paths, mappings, and more can be specified for each application via application.cfc
  • For example:
    • this.customTagPaths = ‘comma-delimited list’
    • this.mappings = ‘comma-delimited list’

Platform Support

  • Same as before
  • Additionally:
    • Windows Vista
    • Apply Mac OS X on Intel
    • JVM 64-bit Support (only for Solaris)
    • JDK 1.5 and 1.6 (default is 1.6 when you install)
    • JDBOSS Application Server 5.x
    • VMWare and MS Virtual Server (not going to be certified)

FASTER

  • 5-8x faster object creation
  • Internal test show 10-20% increase in overall application performance
  • File and Directory operations have been optimized

Nothing is being deprecated – seamless upgrade from MX 7 to 8

You can expect all your current CFML code to run faster and smoothly under CF 8

Coming Mid 2007

This entry was posted on Wednesday, May 2nd, 2007 at 3:36 pm.
Categories: Uncategorized.

No Comments, Comment or Ping

Reply to “Sneak Peak into ColdFusion 8, aka ‘Scorpio’”