CF7 to CF8 difference

CF8 just gave me an error in some code that ran OK on CF7.

The error message is:

coldfusion.compiler.ASTsimpleVariableReference cannot be cast to java.lang.String

Which was caused by the use of a variable as an index in a loop. This would have taken ages to find but for a blog posting by Mike Rankin, thanks Mike.

TVCFUG - CF8 on the 8th of the 8th

ColdFusion 8 has now started shipping. Come along to discover and discuss the new features that make this new release a must have upgrade. We will be showing an exclusive Video specially prepared by Ben Forta for user groups.

* Where: Phones International Network House Globe Park Marlow SL7 1LY
* When: Wednesday 8 Aug 2007
* Meeting starts: 19:00
* Meeting ends: 21:00

Some of CF8s new features include:

* Performance increases
* Server Monitor
* PDF features
* Ajax features
* .NET integration
* Microsoft Exchange Server integration
* Interactive debugger
* Adobe Flex integration
* Per-application settings
* Multi-threading
* Image manipulation
* Presentations on demand
* Atom and RSS feeds
* ZIP and JAR file features
* User-based Administrator and RDS access
* Improved file manipulation functions
* JavaScript operators in CFML
* CFC improvements
* Strong encryption libraries
* Reporting enhancements
* Database interaction improvements
* Argument collections
* Array and structure creation improvements
* Expanded platform, OS, and database support

Come along and see why you just have to have this new release. More details on the UKCFUG web site.

CFUnited - Advanced AJAX Development - Rakshith N

I went to another CF8 session with Rakshith N who was covering some of the new AJAX features.

CF8 now has an easy way to handle JSON. JSON is Javascript Object Notation and represents the data in Javascript. Based on array and object literals. It is less heavy than XML.

{ books:[
{isbn:'00230', title:'xyz'}
{isbn:'00231', title:'abc'}
}

CF8 has new functions to deal with JSON

  • SerializeJSON()
  • DeserializeJSON()
  • IsJSON()

When CF8 creates the JS data types, simple types remain as simple types, Arrays and Structs get converted to JS arrays and JS Structs.

There are two different formats of Query, Row format and Column format.

AJAX Plumbing

Essentially when we use AJAX some area of the page will be updated by a call to the server from a Javascript program. There is some HTML markup for the area of the page we want to update. We can now define an AJAX region with a cfdiv tag. cfdiv uses the bind parameter to link to a cfc or cfm page that will be called to create the content for that area of the page.

<cfdiv bind ="url:foo.cfm">
OR
<cfdiv bind ="cfc:bookData.getBookDetails({bookForm.isbn.value@change})">

There are four types of bind

  • CFC
  • Javascript
  • URL
  • Plain

A new cfajaxproxy tag will create a JS proxy for a cfc method, allowing you to call the cfc from within javascript.

A ColdFusion object in the client JS code can be used to get information from ColdFusion. For example you can use "ColdFusion.navigate" on a link to make it download a JSON object from the server.

Other examples:

ColdFusion.Ajax.submitForm(fomnId, url, callBasckHandler, errorHandler, httpMethod, asynch)

ColdFusion.log.dump(message.component)

In addition there are now AJAX versions of the tree and grid controls which can replace the Java versions in earlier CF.

<cftree name="mail" format="html" completepath="true">

There are tags to do layout like the flash form layout tags.

<cflayout type="border">

<cflayoutarea >

CFUnited Day 2 - CFML Enhancements - Rupesh Kumar

Yesterday there were a few problems with the network connections here at the conference. It seems thay have 4 lines this year versus the one they had last year but its still overloaded.

The first session I attended was a session on CFML enhancements by Rupesh Kumar one of the Adobe CF Developers.

[More]

ColdFusion 8 Performance Figures

Ben Forta has posted the expected improvements in performance on the various tags that have been improved in CF8.

CFUnited - The CF8 Server Monitor - Adam Lehman

Adam Lehman, gave an interesting presentation on the new CF8 Server Monitor which was built using Flash Player 9 as the presentation engine.

The first point he made is that it is not just for use in production for monitoring your live server, 80% of use should be in development. You need to understand what your code is doing so that there are no surprises when application goes into production. In fact you should never run the memory tracker in production, as it will place too much load on the server.

[More]

CFUnited Day 1 - CF8 and LiveCycle Data Services - Tom Jordahl

Live Cycle Data Services can be used for RPC, Messaging and Data Management.

There is a free updater to CF7 which does most of this. But in this case you have to install two copies of JRun. One for CF7 and one for Data Services. With CF8 it will be installed with both Standard and Enterprise in same JRun instance, unless you untick the box in the install. It is difficult to update later, so may be worth installing it from the start.

This allows the Live Cycle APIs to be called directly which improves performance. There is no need for the RMI interface that would be required in earlier versions.

Flash Remoting has also been updated and can be used to connect Flex to ColdFusion.

[More]

Ben Forta and Tim Buntel on CF8 - 8 Reasons you want it now

The W8 is almost over.

Ben's slides were GR8! Well for those who are there you will know what I mean.

For those who weren't there here is the reasons why CF8 is a must have release.

[More]

Free CF8 Hosting

HostMySite are offering Free Hosting for CF8.

Threading in ColdFusion 8

Ben Nadel has posted three good blog entries showing how to do threading in Scorpio (CF8).

Part 1 CFThread Part I - Data Exchange

Part 2 CFThread Part II - Parallel Threads

Part 3 CFThread Part III - Set It And Forget It

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.8.001.